What exactly is RelativeVelocity?

I don’t know if the answer is different for 2D or 3D so if it is, just answer for 2D.

The API just says it’s just the difference in velocity for the two objects. This is not enough information. Is it the difference in velocity at the point of collision? Or the center of the objects? If one or both of the objects is rotating, the answer is going to be different. Also, if an object is resting on the colliding object and the relative velocity is factored in, will it be zero (because neither object is moving), or will it be based on the amount of force pressing against the object? The latter would be valuable for some physics calculations.


Relative velocity is a velocity of a rigid body in specific inertial frame. Let’s say there are two rigid bodies. A and B. A has velocity of 3m/s in forward direction and B has velocity of 5 m/s in forward direction. If you get relative velocity of B taking A as inertial frame then velocity of B will be 2m/s in forward direction as it’s moving forward with difference of 2 m/s.

This applies for both 2D and 3D physics. And it’s not difference of velocity at point of collision but difference with respect to reference frame taken.

you can checkout more here:
Lesson 9: Relative Motion and Frames of Reference