Search Issue Tracker
Won't Fix
Votes
0
Found in [Package]
preview - 0.1.1
Issue ID
1180163
Regression
No
[ECS] Entity GameObject Trips and Bounces over an Edge of the Collider when Collider is set to Shape Type "Mesh"
Steps to reproduce:
1. Open user's attach project "dots-mesh-phsyics-example.zip"
2. Open "SampleScene"
3. Enter Play mode
4. Notice the Sphere bounce when it is rolling over the Mesh Edge
Expected results: ECS Physics does makes a GameObject Trip and Bounce over an Edge of a Mesh Shape Type GameObject
Actual results: ECS Physics makes a GameObject Trip and Bounce over an Edge of a Mesh Shape Type GameObject
Reproducible with: 2019.3.0b1(preview - 0.1.1), 2020.1.0a3(preview - 0.1.1)
Not Reproducible with: 2018.4.8f1(0.0.12-preview.24), 2019.2.4f1(preview - 0.1.1), 2019.3.0a2(preview - 0.1.1)
Notes: The bounce only happens one time on the first encountered Edge
Comments (1)
-
VestedGamr
Aug 08, 2020 05:19
There are two MASSIVE problems with the given "solution".
1. You still get the same behavior regardless of the type of collider used.
2. There are a number of situations where a box or plane collider is unsuitable, such as a banked curve on a racetrack. In such a situation a mesh collider is the only option.
This obsession with trying to make things as efficient as possible EVEN WHEN DOING SO RESULTS IN DETRIMENTAL BEHAVIOR needs to stop. I'm sure most platforms can spare a few computational cycles to prevent this from occurring.
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- DisplayDialogComplex crashes with a long content string containg Cyrillic chars
- "Draw Additional Lights Shadowmap" calls increase when custom MaterialBlockProperty is used
- Crash on _platform_memmove when importing the "Dragon Crashers - URP 2D Sample Project" to a new 2D project
- "Shader is not supported on this GPU" warnings and and shaders are not loading when building the project for non-Chromium browsers
- [iOS][URP] The screen flickers and the "Execution of the command buffer was aborted due to an error during execution" error is thrown continuously
Resolution Note:
This behavior is a consequence of the approach we have adopted to continuous collision detection, in order to produce optimal performance. (It is the same as the Speculative Collision Detection in classic GameObject Physics, visible about halfway down the page at https://docs.unity3d.com/2018.3/Documentation/Manual/ContinuousCollisionDetection.html) It is possible to use the contacts debug visualization mode in 2019.3 beta to see how the contact forces are applied when the ball moves over the edge to the next triangle in the mesh.
For a large flat surface like this the user should opt for a box or plane primitive shape instead. In cases where mesh colliders are required, the user can check the ModifyNarrowPhaseContacts example in the sample project to see how it is possible to mitigate this behavior. (https://github.com/Unity-Technologies/EntityComponentSystemSamples/tree/master/UnityPhysicsSamples/Assets/Demos/5.%20Modify/Scripts)
If this problem arose in some other specific use case where the user would like guidance, I would invite them to come to the forum to discuss it: https://forum.unity.com/threads/unity-physics-discussion.646486/