Performance regression
See original GitHub issueWe are considering using cannon-es
in three.js but seems like there’s a performance regression.
@Mugen87 converted cannon.js to modules and here’s the running example: https://raw.githack.com/mrdoob/three.js/dev/examples/physics_cannon_instancing.html
This is the same example using cannon-es
:
https://raw.githack.com/Mugen87/three.js/dev45/examples/physics_cannon_instancing.html
Issue Analytics
- State:
- Created 3 years ago
- Reactions:2
- Comments:12 (8 by maintainers)
Top Results From Across the Web
What is Performance Regression Testing? - Mabl
Performance regression testing is a comparative approach that examines how a software application performs across in successive builds.
Read more >Performance Regression Testing - OctoPerf
Performance Regression being a subset of regression testing as a discipline is therefore ensuring that previously developed and tested ...
Read more >Performance (Regression) - RapidMiner Documentation
This operator is used for statistical performance evaluation of regression tasks and delivers a list of performance criteria values of the regression task....
Read more >Regression Performance - C3 AI
Evaluating performance of a regression model requires a different approach and different metrics than are used to evaluate classification models.
Read more >Assessment of Regression Models Performance • performance
performance. DOI downloads total status. Test if your model is a good model! A crucial aspect when building regression models is to evaluate...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
Thanks for the issue and the usage example. This also looks related to #16. I’ll look into it soon!
Hello friends, I’ve discovered the issue.
Basically there are tons or commit which are in the cannon.js repo but haven’t been published to npm or built into the cannon.js bundle. Here is the full list. When we built the source files again in cannon-es, we inherited automatically all those commits.
Between these commits there is
86b0444
, where schteppe implemented the fixed timestepping from the last snippet of this famouse article, however it was left unfinished or was not tested properly, leading to the framerate issues.I’ve tried to fix those issues in #40, but of course I’m not schteppe. If you guys @mrdoob and @Mugen87 could test with the cannon-es bundle from that branch that would be grand 🙏
Also @codynova issue #16 should be fixed as well, could you do a test? 🙏
@arpu is right, the third parameter is used to tell how many maximum internal steps the
step()
function can take if there is too much lag. If you set it to 1, it doesn’t take any internal steps, but the simulation is technically slower. If you set it to an high number, it takes as many steps as needed to make the interaction have a fixed timestep, however if the step is expensive (a lot of boxes), taking too many steps can cause lag by itself.