Search Issue Tracker
By Design
Votes
0
Found in
5.3.5f1
Issue ID
812157
Regression
No
Identical configurable joint chains have different behavior depending on whether their colliders are trigger or not
Steps to reproduce:
1. Open attached project "812157"
2. Open scene "repro"
3. Select both phonelines objects in hierarchy to view GUI
4. Run scene
5. Notice that chains behave differently. This is because one chain has triggers while another one has colliders. The catch here is that collision matrix is set to prevent any collisions between colliders.
Reproduced with: 5.2.4f1, 5.3.6f1, 5.4.0f2, 5.5.0a4
Comments (1)
-
ac21217
Aug 18, 2016 02:32
I can't access the repro project, but I have a coupule suggestions:
1) Unity's physics are not deterministic. Two scenarios, no matter how similar, may play out differently in the physics engine.
2) I'm guessing that colliders marked as triggers aren't considered when accounting for a rigidbody's center of mass, so the individual links of the trigger-collider chain may have different COMS than their corresponding link in the other chain.
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
- Texture2D hash changes inside of an AssetBundle when rebuilding a SpriteAtlas bundle with an empty AssetPostprocessor Script enabled
- Aniso Level still applies when Generate MipMap is disabled in Texture Import Settings
- Mipmap Limit Groups long names are not truncated when creating a new Mipmap Limit Group with a long name
- “ArgumentException: Invalid double parameter.” error is thrown when Infinity is typed into the Fixed Timestep field
- GameObject becomes gray when using HDRP and STP together on macOS
Resolution Note:
The Physics Engine internally assumes that Triggers have no mass. This is an optimisation because Triggers can't interact with the environment and therefore they do not need to have their Inertia Tensor and Center of Mass values re-computed (it's a relatively expensive operation).
A valid workaround that we tested internally was to set up a duplicate set of objects with normal colliders instead of triggers, then for each object we would copy Inertia Tensor, Inertia Tensor Rotation and Center of Mass values from a collider to the equivalent trigger object. This results in much more similar behaviour.