Search Issue Tracker
By Design
Votes
0
Found in
2018.4
2018.4.17f1
2020.2
Issue ID
1237671
Regression
No
Unity Character Controller Component can climb unclimbable walls when approaching them at right angle
Reproduction steps:
1. Open the attached project ("UnityController.zip")
2. Open the repro scene ("SampleScene")
3. Enter Play Mode
4. Move the Capsule using WASD/Arrow keys
5. Walk into the higher platform and move till you reach the corner
Expected result: Capsule walks through the corner, remaining on the ground
Actual result: Capsule jumps in the air while walking through the corner, sometimes climbing on the platform in the process
Reproducible with: 2018.4.24f1, 2019.4.3f1, 2020.1.0b15, 2020.2.0a17
Notes:
1. The issue reproduces only with certain heights of walls (approximately less than half of the controller size)
2. The issue reproduces only when the corner is approached while "wall-hugging" (moving into the wall)
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
- Automatic LOD fails and SRP Batcher incompatibility occurs when using spline-based quad-topology meshes
- Editor crashes on D3D12GetInterface when repeatedly enabling and disabling 256 text components
- Flickering bright white dots in the Scene when the Android Platform is selected and DX11 Graphics API is used with Iris(R) Xe Graphics GPU
- Inconsistent capitalization and misaligned text in multiple query blocks in Search window
- “Remove Unused Overrides” available on not loaded Scene and throws “ArgumentException: The scene is not loaded” warning
Resolution Note:
PhysX character controller doesn't offer a solid guarantee that it won't be able to climb tall obstacles when non-zero step offset is set. Read more here: https://gameworksdocs.nvidia.com/PhysX/4.1/documentation/physxguide/Manual/CharacterControllers.html#climbing-mode. Unity only uses that PxCapsuleClimbingMode::eCONSTRAINED mode that is supposed to include an attempt to avoid climbing too high.