Now, thinking about this, this seems to make sense: when colliding with an object that has some rotational velocity, the constraint solver will adjust both parties accordingly, and the angular velocity of the planet will obviously impact the non-rotating object. However, given that in my situation gravity is causing the smaller sphere to

**always be in contact with**the rotating planet, the impulse solver

**will continually increase its velocity**.

To test this, I hobbled together a crude implementation with raylib and bullet3 and found the exact same result: the smaller sphere gains velocity on a rotating sphere until it leaves the surface. I'm not suggesting that there is an issue with bullet, more so that I confirmed my system is indeed working 'as intended.'

Considering that I believe what I am observing is a

**feature**of these constraint solvers,

**not a bug**, how can one use constraints and impulse solvers to have an object remain stable on a rotating object under the force of gravity? Or would I need to go about collision response in a totally different way in order to have stationary objects on rotating objects? Perhaps there is another constraint that needs to be added other than normal and friction?

Thanks