Does the physics collision condition know if a collision happened between frames? #3805
-
We know that Box2D does a good job of handling fast-moving physics objects using CCD (continuous collision detection) especially when the "bullet" property is enabled (which enables CCD between dynamic objects). However, it seems that the physics collision condition may not be detecting collisions if they happen between frames (even though Box2d handles the movement of the object correctly). Question: Does the physics collision condition know if a collision happened between frames? (original idea from: @AshyraStudio) |
Beta Was this translation helpful? Give feedback.
Replies: 6 comments 3 replies
-
About "collision instability" (or the "between frame" collision). The "exams" tend to show, collision that are calculated between frame, can be "skipped", in other words the software can only process what he "completely drawn", but speed and Fps can make it so an object will never be drawn next to it. "Frame 01 cleared" The obstacle in that scenario is touched between the frame clearance, and the next frame drawing. Events "Solution" that may can work: |
Beta Was this translation helpful? Give feedback.
-
https://drive.google.com/file/d/1MyFp6qeoOFXh4G9if9xzUa5g4y8ISCJz/view?usp=drivesdk |
Beta Was this translation helpful? Give feedback.
-
It should increase the text everytime it collide. |
Beta Was this translation helpful? Give feedback.
-
(I left the server and I'm probably not going to continue with Gdev. |
Beta Was this translation helpful? Give feedback.
-
Here is a great video showing this problem. At 20 seconds in, a ball gets stuck bouncing vertically. Even though the ball bounces off the bottom brick, GDevelop never detects the collision and subtracts the life of the brick. 8mb.video-OMh-ar85EszR.mp4Here is the code that checks this: After looking at this closer, is the problem because I am using a TriggerOnce inside a ForEach, so it can only be true for one brick per frame? (that issue is one of the top things I'd like improved in GDevelop) |
Beta Was this translation helpful? Give feedback.
-
This feature has been added. This discussion can be closed. |
Beta Was this translation helpful? Give feedback.
This feature has been added. This discussion can be closed.