Search Issue Tracker
Fixed in 2021.2.X
Fixed in 2021.1.X
Votes
0
Found in
2020.3
2021.1
2021.1.0b10
2021.2
Issue ID
1321270
Regression
No
EdgeCollider2D Adjacent Endpoints result in inverted separation normals when using Collider2D.Distance
Reproduction steps:
1. Open attached project "Edge Collider Distance Normal Bug.zip" and scene "SampleScene"
2. Enter Play Mode
3. In Game View, observe the 'Left Circle' and 'Right Circle' GameObjects and their red and blue lines
Expected result: The 'Left Circle' and 'Right Circle' red lines overlap with their blue lines
Actual result: The 'Right Circle' red line doesn't overlap with its blue line
Reproducible with: 2020.3.3f1, 2021.1.1f1, 2021.2.0a12
Could not test with: 2018.4.33f1, 2019.4.23f1 (compilation errors break project)
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
- NullReferenceExceptions are being thrown when saving a ScriptableObject with an array of a type with a CustomPropertyDrawer that uses TrackPropertyValue
- Applied velocity is inconsistent when using Rigidbody AddForce() with ForceMode.VelocityChange
- Crash on AudioUtil_CUSTOM_HasAudioCallback when exiting Play Mode while the Inspector is displaying a GameObject with an empty script attached
- Scroll offset is framerate-dependent when scrolling with velocity in the Device Simulator
- "Object.FindObjectsOfType<T>() is obsolete" warning is thrown when using "Transitions Plus" asset
Resolution Note (fix version 2021.2):
Box2Ds contact creation assumes there'll be a continuing edge when setting adjacent edge points and this is normally true but for this use-case, there isn't so no contacts were created and the Unity code has to provide a best-guess fallback which is different than what would be returned without the adjacent edge. When using the Distance method against an EdgeCollider2D, we temporarily disable adjacent start/end points which resolve the low-level Box2D issue here.