Added support for collision events regardless if started was called: CollisionEvent::Active #550
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This adds support for receiving collision events even after Started was called.
Why not just cache that
CollisionEvent::Started
was called and invoke logic every loop update untilCollisionEvent::Stopped
is called?This works great for linear games. However, it makes games that make use of mechanics such as a network rollback algorithm difficult. It requires us to look up the previous state in the rollback and see if a collision started or not, adding additional complexity. It is much easier to keep each update loop as stateless as possible (ideally completely stateless). Which means we can update the gameplay loop without having to concern ourselves with the previous or next state.
Feel free to accept or reject our PRs. This is simply Lange Studio's way of giving back to beautiful open source devs such as yourselves as we migrate Blocky Ball from Unity to Godot! We keep our own forks in sync and contribute back PRs so the original authors have the option to take our changes if they want them. This is proving to be a great physics engine for us and I look forward to testing it at scale on our servers!
And if you are interested in the game that is soon to be leveraging this engine, here is a shameless link drop of our Unity + Unity Physics soon to be Godot + Rapier game Blocky Ball! :)
https://store.steampowered.com/app/1343040/Blocky_Ball/