Search Issue Tracker
Won't Fix
Votes
5
Found in
5.5.0f3
Issue ID
870855
Regression
No
Runtime changes to Friction or Bounciness in "Physics material 2d" have no effect on objects which use that PhysicsMaterial2d
To reproduce:
1. Open attached project "Friction.zip".
2. Open and Play "Scene" scene.
3. Observe the scene. "Player" object is sliding at the same speed as if it's Friction is still 0.
4. Stop the scene. Open "ChangeFriction.cs" and uncomment part of the code.
5. Play scene again. Now it works as expected.
Expected result: When you change Friction or Bounciness in "Physics material 2d" at runtime, it has an effect on GameObjects which use this material.
Actual result: If Friction or Bounciness in "Physics material 2d" is changed by the script at runtime, it will have no effect.
Reproducible with: 5.3.7p1, 5.4.3p1, 5.5.0f3, 5.6.0b4
Workaround:
Disable and enable collider2d after you change values in "Physics material 2d".
Notes:
Does not affect new objects which are created after values got changed in "Physics material 2d".
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
- Memory leak when a lot of UI elements are spawned and despawned
- Warnings are not logged in the Console window when using external code analyzers
- Errors “TLS Allocator ALLOC_TEMP_TLS, underlying allocator ALLOC_TEMP_MAIN has unfreed allocations, size 288“ appear constantly when Prefab is open
- Crash on PPtr<Shader>::operator or NullException errors spammed in console when calling Dispose() on null GraphicsBuffer with baked Reflection Probes
- “EndRenderPass: Not inside a Renderpass” and other Render Graph errors in the Player when Render Graph is enabled and Overlay UI is used
Resolution Note:
Box2D does not support this and implementing it has a low priority. Very old case, not likely to implement it.