RigidBodies shouldn't be forced with set velocities or set positions if ever possible. (At least not all the time)
Instead use apply_impulse to apply forces like gravity (i.e. in fixed_process)
Example:
var gravity=Vector3(0,get_mass() * -9.8,0)*delta
apply_impulse(Vector3(),gravity)
This example is for 2.1. I hope it works the same way on godot 3.
The first parameter to apply_impulse is the location offset (in global world space) where to apply the force (gravity). So if you have another center of gravity than 0,0,0, you could place a child spatial in your rigid body and use the global position difference of body and child spatial to get the needed offset.
The second parameter is the force/impulse vector to apply to the body. This vector is also in global coordinate space. In my example I created a simple y-downward vector with 9.8m/sec².