godotengine / godotengine/godot
Physics2D: Non-uniform scale warning on `CollisionObject2D` is missing compared to `CollisionObject3D`.
- Dominant language
- C++
- Stars
- 117k
- Forks
- 26.8k
- PR merge metrics
- PR metrics pending
Description
### Tested versions
Godot v4.3.dev6.mono - Windows 10.0.17763 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 4060 Ti (NVIDIA; 31.0.15.5222) - AMD Ryzen 9 5900X 12-Core Processor (24 Threads)
### System information
Godot v4.3.dev6.mono - Windows 10.0.17763 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 4060 Ti (NVIDIA; 31.0.15.5222) - AMD Ryzen 9 5900X 12-Core Processor (24 Threads)
### Issue description
`CollisionObject3D` will [warn the user about non-uniform scaling](https://github.com/godotengine/godot/blob/master/scene/3d/physics/collision_object_3d.cpp#L739), however, [this does not apply](https://github.com/godotengine/godot/blob/master/scene/2d/physics/collision_object_2d.cpp#L584) to `CollisionObject2D`.
### Steps to reproduce
When opening the MRP, there is no warning about non-uniform scaling, and the physics behavior is weird.
https://github.com/godotengine/godot/assets/71481700/0fed5d3a-eb18-4448-9a99-1eae5ed672a0
### Minimal reproduction project (MRP)
[MRP_CharacterSliding.zip](https://github.com/godotengine/godot/files/15390944/MRP_CharacterSliding.zip)
Contributor guide
Research direction
Start by comparing scene/2d/physics/collision_object_2d.cpp with the warning logic in scene/3d/physics/collision_object_3d.cpp, then reproduce the behavior with the linked MRP. Done means CollisionObject2D warns users about non-uniform scaling in the relevant situation, matching the issue's expected behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- game-dev
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 45/100