Currently, I am syncing up a btPairCachingGhostObject with the player btRigidBody through a motionState, which seems okay but I read something in another topic that made me reconsider. It's my understanding that this is what happens: the ghost object is synced up after the physics tick and after all the contacts are processed, so the ghost object will always be one frame behind the actual rigid body it is following.
Is this the case? If so, is there some better way to sync up the ghost object (instead of a motionState) so it isn't lagging behind? Do I need to do something completely different like btCollisionWorld::contactTest?
Thanks