Greetings, this is my first post. Hope you’re having a good day, cause I am not, I am suffering. I need help with a rigidBody3D inside my Player scene or character.
My layers and masks are:
Working on two scenes: Level, and the Player.
The Level scene has a floor and walls as shown below. Floor is on layer 1 with all masks on. Walls are on layer 2 with all masks on.
My root node is a CharacterBody3D with the script for movement attached to it. I gave it a collision box that covers the entire torso and legs (3D Game with 2D sprites) and set it on layer 5 (bodies) with masks 1-5, 8 on, ignores 6 and 7 to avoid jitter glitches between the body and the head for now. This works fine, I can move the character over the floor and it will collide with a wall.
Had the idea to make the head its own RigidBody3D so it could take damage and even fall off rolling. Also to avoid clipping, the head’s 2D sprite passes through the walls. I set this RigidBody3D on layer 6, and told it to interact with layers 1-4, 6 and 8 only, also locked its axis so it’d not spawn rolling away. However, it passes through the walls no matter what although it IS being detected as a collision (red triangles show up when they touch).
I have done so many tests, changed the hierarchy a lot and have been playing with the layers and masks all day. It makes no sense to me that the body’s collision works just fine, but not the head’s. Disabled “Can sleep” too, and haven’t touched any other setting regarding freezing or anything like that. There is nothing in the script regarding layers or masks either, they are basic movement scripts…
I made the head’s collision shape a big box right now just to test it more clearly:
What am I missing?