I'm trying to shoot shells from a tank. I've tried various shell types (KineticBody, RigidBody, Area) but I keep having troubles with placement and alignment, motion, gravity, and collisions.
On my tank model I have a spatial point (ShotStart) just past the end of my cannon barrel (child of the barrel) so that I can place a shell at the right spot. I instance the shell (a scene) and place it at ShotStart and align it with ShotStart so it's pointing in the right direction. Then I move it forward until it collides with something and I get the Node it collided with as well as the collisionshape within that node. Then I have the shell run StruckNode.TakeHit(player, collisionshape, damage)
I have various parts of that working depending on which type of node and the propulsion method. The most complete so far is KineticBody with move_and_collide() but I can't figure out how to apply gravity (not necessarily through physics). It seems to be the most straightforward way but I could easily be mistaken.
What is your favorite way of handling projectiles in 3d? Examples would be greatly appreciated too!