njw1985
19-05-2008 06:24:41
I setup character like this:
NxOgre::CharacterParams Params;
Params.setToDefault();
Params.mType = NxOgre::CharacterParams::CT_Box;
Params.mSkinWidth = 0.5;
character = mScene->createCharacter("ninja", NxOgre::Pose(Vector3(50,0,100),Ogre::Quaternion::IDENTITY) , Params);
character->attachMesh("robot.mesh");
///////////////////////////////////////////////////////////////////////////
float CalculatedMovespeed = 100.0;
float Cos45 = .7071;
NxVec3 FinalMovement = NxVec3(0,0,0);
if(mKeyboard->isKeyDown(OIS::KC_I))
{
// FinalMovement+=(NxVec3(0,0,-1) * CalculatedMovespeed);
character->addMovement(Character::DR_Forward);
}
else if(mKeyboard->isKeyDown(OIS::KC_K))
{
// FinalMovement+=(NxVec3(0,0,1) * CalculatedMovespeed);
character->addMovement(Character::DR_Backward);
}
else if(mKeyboard->isKeyDown(OIS::KC_J))
{
// FinalMovement+=(NxVec3(-1,0,0) * CalculatedMovespeed);
character->addMovement(Character::DR_StepLeft);
}
else if(mKeyboard->isKeyDown(OIS::KC_L))
{
// FinalMovement+=(NxVec3(1,0,0) * CalculatedMovespeed);
character->addMovement(Character::DR_StepRight);
}
the result is: the character can't move,why?
NxOgre::CharacterParams Params;
Params.setToDefault();
Params.mType = NxOgre::CharacterParams::CT_Box;
Params.mSkinWidth = 0.5;
character = mScene->createCharacter("ninja", NxOgre::Pose(Vector3(50,0,100),Ogre::Quaternion::IDENTITY) , Params);
character->attachMesh("robot.mesh");
///////////////////////////////////////////////////////////////////////////
float CalculatedMovespeed = 100.0;
float Cos45 = .7071;
NxVec3 FinalMovement = NxVec3(0,0,0);
if(mKeyboard->isKeyDown(OIS::KC_I))
{
// FinalMovement+=(NxVec3(0,0,-1) * CalculatedMovespeed);
character->addMovement(Character::DR_Forward);
}
else if(mKeyboard->isKeyDown(OIS::KC_K))
{
// FinalMovement+=(NxVec3(0,0,1) * CalculatedMovespeed);
character->addMovement(Character::DR_Backward);
}
else if(mKeyboard->isKeyDown(OIS::KC_J))
{
// FinalMovement+=(NxVec3(-1,0,0) * CalculatedMovespeed);
character->addMovement(Character::DR_StepLeft);
}
else if(mKeyboard->isKeyDown(OIS::KC_L))
{
// FinalMovement+=(NxVec3(1,0,0) * CalculatedMovespeed);
character->addMovement(Character::DR_StepRight);
}
the result is: the character can't move,why?