godotengine / godotengine/godot
Cannot Access/Modify Debug Arrow of one-way CollisionShape2Ds
- Dominant language
- C++
- Stars
- 117k
- Forks
- 26.8k
- PR merge metrics
- PR metrics pending
Description
### Tested versions
- Reproducible in v4.3.stable.official [77dcf97d8]
- Reproducible in v4.2.stable.official [46dc27791]
### System information
Godot v4.3.stable - Windows 10.0.19045 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 3060 Ti (NVIDIA; 31.0.15.3758) - AMD Ryzen 5 1600 Six-Core Processor (12 Threads)
### Issue description

_Visual Description of Image: A blank Godot project with a single StaticBody2D node. It has a single child, a CollisionShape2D. Because the collision shape has the one-way property set to true, the screenshot shows an arrow underneath it. This arrow is highly distorted as a result of the scaling performed on the CollisionShape2D node and the relative size of the RectangleShape2D node._
**Issue description**: Visually, the editor is working as intended. The issue is that I'm making a tool based on StaticBody2D, and I cannot access the arrow polygon or modify it.
This could potentially be considered a feature proposal. But there is a chance that the arrow is not supposed to be drawn this large in any circumstance, so I'm submitting this as a general issue.
### Steps to reproduce
You can use the MRP to see this outcome, but here are the steps to reproduce:
1. Create StaticBody2D and child CollisionShape2D with RectangleShape2D for example
2. In StaticBody2D, enable one-way collision.
3. In CollisionShape2D, specify the scale to ( 300, 20 )
4. In RectangleShape2D, specify the size to ( 1, 1 )
### Minimal reproduction project (MRP)
[MRP.zip](https://github.com/user-attachments/files/17171980/MRP.zip)
Contributor guide
Research direction
Start by reproducing the one-way CollisionShape2D setup from the listed steps or the attached MRP, then trace the Godot editor code that draws the debug arrow for one-way collision. Determine whether the arrow should be scaled differently or exposed for tool-based modification; done means the reported distorted arrow behavior is addressed and the result is covered by an appropriate editor check.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- game-dev
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100