I’d like to understand how the interaction of a dynamic and kinematic rigidbody works - specifically what effect the movement of the kinematic rigidbody does in such a collision. Thus, throughout this post I’m mostly assuming the dynamic rigidbody is not actually moving/has zero velocity at the time of the collision.
1, the documentation mentions that kinematic rigidbodies should be used via the transform of the object:
this doesn’t seem to make sense, as MovePosition seems to work well (more on that below), so I guess the documentation is wrong in this case?
2, what happens if I move a kinematic rigidbody into a dynamic rigidbody (assuming it’s still), just by modifying its transform? Does some sort of restitution kick in, and the dynamic rigidbody is just translated out of the object? Or are some sort forces actually applied?
3, What happens if I move a kinematic rigidbody into a dynamic rigidbody via MovePosition? It seems like the reaction here is just as if the body was actually dynamic, of course with the difference that the kinematic rigidbody doesn’t actually move back/lose any velocity as a result of the collision. The velocity of the kinematic rb gets determined based on frame difference etc, and things seem to work fine.
I guess this could be thought of as this kinematic rigidbody being dynamic and with infinite mass? The behavior seems equivalent to this. From what I’ve tested, the mass property doesn’t seem to make any difference for the kinematic rigidbody, and everything works fine - i.e. it can be used appropriately as a platform for moving dynamic rigidbodies on in - friction works etc (while moving the platform kinematic rigidbody via a transform will not cause the dynamic rb object on the platform to do anything, so the platform will just slide under the object until it starts falling down.