Je veux créer un objet qui ne se déplace que le long des axes X et Z, tout en gardant l'axe Y désactivé (c'est comme un mouvement en 2D, et l'objet ne tombera pas).
J'utilise actuellement une contrainte de 6 ddl pour restreindre le mouvement dans l'axe Y, mais cela ne fonctionne pas:
btRigidBody* zeroBody = new btRigidBody(0, NULL, NULL); // Create the body that we attach things to
btRigidBody* robot = mCarChassis->getBulletRigidBody();
btGeneric6DofConstraint* constrict = new btGeneric6DofConstraint(*robot, *zeroBody, btTransform::getIdentity(), btTransform::getIdentity(), false);
constrict->setLinearLowerLimit( btVector3( 1, 1, 1));
constrict->setLinearUpperLimit( btVector3(-1, 1,-1));
constrict->setAngularLowerLimit( btVector3( 1, 1, 1) );
constrict->setAngularUpperLimit( btVector3(-1, -1, -1) );
mBulletWorld->getBulletDynamicsWorld()->addConstraint(constrict);
Merci!