Applying force to y- or z-axis is odd? (SOLVED)

I have multiple dynamic physics objects that are spawned from a factory. Making them rotate with

    msg.post(self._cobj, "apply_force", {
        force = vmath.vector3(100, 100, 100),
        position = vmath.rotate(go.get_rotation(), vmath.vector3(1, 0, 0))
    })

results in all of them rotating in a different velocity. Below is the angular velocity of each instance.

Only the x-axis angular velocity is what I expect it to be. I have no idea if this is a bug or I am doing something that the engine cannot handle for some reason.

phys30.zip (7.7 KB)

The position has to be the world position of the individual game objects. If the apply_forcr position is the same, and the game objects are on different positions, they will get different rotations.

4 Likes

That makes so much sense. Thank you! :heart: :laughing:

(I think I just assumed I would be offsetting the collision object center)

2 Likes