Search Issue Tracker
By Design
Votes
0
Found in
2022.3.17f1
2023.2.5f1
2023.3.0a19
6000.0.0b11
Issue ID
UUM-60128
Regression
No
Collision normals are inverted when the Motion Type is set to Kinematic
Reproduction steps:
1. Open the attached "PhysicsSamplesKinematicBug.zip" project
2. Open the "Events - Collisions" Scene ( Assets > 6. Events )
3. Enter the Play mode
4. In the Scene view, observe that the blue arrows on the spheres point upwards
5. Exit the Play mode
6. In the Hierarchy, toggle on the "Events - Collisions Subscene" and expand it
7. Select “Event Surface” GameObject and all the child elements of “Boundary” GameObject
8. In the Inspector, change the Physics Body Components Motion Type property from Static to Kinematic
9. Save the Subscene and toggle it off
10. Enter the Play mode
11. In the Scene view, observe that the blue arrows on spheres point downwards
Expected results: Collision normals remain the same
Actual result: Collision normals get inverted
Reproducible with: 2022.3.17f1, 2023.2.5f1, 2023.3.0a19
Couldn’t test with: 2021.3.34f1 (Invalid package dependencies), 2023.3.0b1 - 2023.3.0b2 (Invalid package dependencies)
Reproducible on: Windows 11
Not reproducible on: no other environment tested
Notes:
- Collisions still perform correctly
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
- Popup windows spawn on the incorrect monitor when the Editor is placed near the boundary of scaled monitor next to a monitor with different scaling
- Hidden Tabs do not shift into empty space after closing visible Tabs
- [Android] Application not deployed on a device when "activity-alias" is used in the AndroidManifest
- Shader compile process adds shader ID to the constant buffer name when the word "Globals" is being used in Vulkan
- Audio Mixer Snapshot link to the documentation isn’t working
Resolution Note:
Currently the way we display normals is always from the PoV of the "body B" from the shape collision pair. This means that either body in that pair can be body B as order is not guaranteed.
We will be filing a separate task to improve the UX of normals with respect to this detail.