Flags not changing anything.

3DModelerMan
Posts: 20
Joined: Thu Oct 22, 2009 2:02 pm

Flags not changing anything.

Post by 3DModelerMan »

Hi I have this code,

Code: Select all

//Body construction info 
 btRigidBody::btRigidBodyConstructionInfo ci(0, 0, 0);
 ci.m_collisionShape = shape;
 ci.m_startWorldTransform.setOrigin(btVector3(P.X, P.Y, P.Z) );
 ci.m_motionState = new CActorMotionState(character);
 ci.m_mass = mass;
 ci.m_friction = 0;
 ci.m_restitution = 0;

 //Create body
 btRigidBody* RB = new btRigidBody(ci);
 RB->setAngularFactor(0);
 RB->setGravity(btVector3(0,0,0));
 RB->setFlags(RB->getFlags() | btCollisionObject::CF_KINEMATIC_OBJECT);
 
 //Add to array and world
 m_rigidBodyArray.push_back(RB);
 m_world->addRigidBody(RB);
It's creating a rigid body for a character, so I wanted a kinematic rigid body. But the flags don't seem to change anything. I even tried putting CF_STATIC_OBJECT, and CF_NO_CONTACT_RESPONSE in, but neither did anything different. Does my motion state have to do something special for kinematic objects?