Area3D Collision Signal only triggers once

Godot Version

4.3-mono

Question

First time working with collision in Godot and I can’t seem to get it to work properly.
I want to detect when an object enters/exits an area, but for some reason, the body_entered and the body_exited signal only trigger once each according to my logs.

My setup is as follows:
With the Cube spawning inside the Area, it makes sense for the signal to trigger and the body_exited would also trigger when i drag the StaticBody3D out of the Area3D (The entire object, not just the CSGBox3D or something), but when I drag it into the Area again, nothing happens. Both signals can’t be triggered again for some reason. What am I missing here?

StaticBodies aren’t meant to be moved, they probably do not check for areas when moving. Have you tried a AnimatableBody3D, CharacterBody3D, or RigidBody3D yet?

1 Like

I feel a little stupid for not trying that earlier. I switched to a CharacterBody3D and it works now. Thank you!