Characterbody3d Collides with Static Body3ds, but not other Characters
Hey all, got a question for you. I currently have a test character (a ship) that I plan to make several versions of for use as both the player's ship and the NPCs'. Naturally, I want the ships to collide with each other, ramming and all that, but currently, the CharacterBody3ds don't collide at all, but it does work with a Staticbody3d. They're all in the 2 layer and mask, and I move with with move_and_slide()
by changing velocity, so it's not either of those. I saw a post here: https://forum.godotengine.org/t/detecting-collisions-on-characterbody3d-thats-not-moving/63364 that seems to be similar, but I tested it if both ships were moving and it still didn't work. I'm at a total loss here, any help would be appreciated, and video evidence below for your convenience:
Edit 1: Seems like the Characterbody3d isn't detecting ANY collision when going through the other Characterbody, but it IS detecting the Rigidbody. Tested with get_last_slide_collision()
. move_and_collide(velocity * delta)
also does not seem to work . Also set the collision shapes to "Local to Scene" as well. No change either.
Edit 2: Changed the Rigidbody to a Characterbody3d. Still works! So it has something to do with the same two scenes interacting with each other.
Edit 3: Just did an Uber test:
https://reddit.com/link/1fk5eyg/video/pnj9no7tfopd1/player
All three are now Characterbody3Ds, and both Ships interact with the Barrier, but not each other. I HAS to be something to do with the fact that the ships are the same scene. But like I said, all of my collision shapes are Local to Scene.
Edit 4: I FINALLY FIGURED IT OUT!!!
I was using copied concave polygons that I had made from the meshes making up the ship. When I copied them over to use as the CharacterBody3d's collision, I guess since they were missing the mesh information, it wouldn't detect anything. I remade the collision shapes as box, cylinder, and convex polygons with custom vertex placement, and, as Todd says: "IT JUST WORKS!"
Thanks to everyone who helped out! I'll mark this as solved.