Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TimeOfImpact loop fixes #36

Merged
merged 6 commits into from May 22, 2015
Merged

TimeOfImpact loop fixes #36

merged 6 commits into from May 22, 2015

Conversation

JayH5
Copy link
Contributor

@JayH5 JayH5 commented May 18, 2015

These are some small fixes for the TimeOfImpact class. I was experiencing occasional stalls in the main loop under certain circumstances. These changes seem to fix those.

I compared the TimeOfImpact class to the latest C++ Box2D source and ported some of the changes found there.

b83f937 is not based on the Box2D source and is probably the most important change here as it prevents a whole lot of useless loop iterations under certain conditions. If the root loop is exhausted (performs 50 iterations without reaching a solution) nothing will have changed in the enclosing loop (since neither t1 nor t2 will have changed), so the enclosing loop will continue looping and calculating the same thing without reaching a solution.

@dmurph
Copy link
Member

dmurph commented May 18, 2015

Awesome!

Small nit: can you break the '50' iterations into a constant at the top of the file? And use it for the other '50' right above it?

Thanks!

@JayH5
Copy link
Contributor Author

JayH5 commented May 19, 2015

Done. All these constants seem to be public for no reason...but I'm just gonna be consistent :p

@dmurph
Copy link
Member

dmurph commented May 22, 2015

Looks great, thanks!

dmurph added a commit that referenced this pull request May 22, 2015
@dmurph dmurph merged commit e1b7021 into jbox2d:master May 22, 2015
filiph added a commit to filiph/box2d.dart that referenced this pull request Dec 5, 2017
filiph added a commit to google/box2d.dart that referenced this pull request Dec 7, 2017
* Make velocityThreshold mutable - See jbox2d/jbox2d#1
* TimeOfImpact loop fixes - See jbox2d/jbox2d#36
* fix ropejoint pool leak bug - See jbox2d/jbox2d#59
spydon pushed a commit to flame-engine/forge2d that referenced this pull request Dec 26, 2020
* Make velocityThreshold mutable - See jbox2d/jbox2d#1
* TimeOfImpact loop fixes - See jbox2d/jbox2d#36
* fix ropejoint pool leak bug - See jbox2d/jbox2d#59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants