You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Issue description:
Stated simply: scaling down an Area to zero volume will cause PhysicsDirectSpaceState.intersect_ray() to randomly fail to detect other Areas in the scene.
Stated more precisely: if a scene contains a CollisionShape with either a trimesh or convex collision mesh, and the CollisionShape's Area or any higher-level parent is scaled down to zero on any axis, then PhysicsDirectSpaceState.intersect_ray() will inconsistently (and seemingly randomly) fail to detect other Areas/CollisionShapes in the scene.
It won't detect the flattened Area at all. I don't know if that's intentional.
Steps to reproduce:
Try the attached project. The root node has a script that'll print "True" when the cursor moves over an Area, and "False" when it exits. Move the cursor over the Sphere on the left. See that it spams the console with alternating "True" and "False". Every couple of _physics_process() calls, it fails to detect the sphere's Area, and records "False". Now increase the x-scale of the "SquishedCube" and try again. intersect_ray() now works correctly.
Godot version:
v3.2.2.stable.custom_build
(installed from https://aur.archlinux.org/packages/godot/, which builds from https://github.com/godotengine/godot/archive/3.2.2-stable.tar.gz)
OS/device including version:
Arch Linux, i7-6700, GTX 1070, nvidia driver 450.57
Issue description:
Stated simply: scaling down an Area to zero volume will cause
PhysicsDirectSpaceState.intersect_ray()
to randomly fail to detect other Areas in the scene.Stated more precisely: if a scene contains a CollisionShape with either a trimesh or convex collision mesh, and the CollisionShape's Area or any higher-level parent is scaled down to zero on any axis, then
PhysicsDirectSpaceState.intersect_ray()
will inconsistently (and seemingly randomly) fail to detect other Areas/CollisionShapes in the scene.It won't detect the flattened Area at all. I don't know if that's intentional.
Steps to reproduce:
Try the attached project. The root node has a script that'll print "True" when the cursor moves over an Area, and "False" when it exits. Move the cursor over the Sphere on the left. See that it spams the console with alternating "True" and "False". Every couple of
_physics_process()
calls, it fails to detect the sphere's Area, and records "False". Now increase the x-scale of the "SquishedCube" and try again.intersect_ray()
now works correctly.Minimal reproduction project:
ray-test.zip
The text was updated successfully, but these errors were encountered: