1
0
mirror of https://gitlab.com/OpenMW/openmw.git synced 2025-02-04 03:40:14 +00:00

collision shape scale fix

This commit is contained in:
scrawl 2012-03-02 16:47:13 +01:00
parent 21b8456453
commit 5aabf22c16
2 changed files with 3 additions and 2 deletions

View File

@ -210,12 +210,13 @@ namespace Physic
delete mShapeLoader; delete mShapeLoader;
} }
RigidBody* PhysicEngine::createRigidBody(std::string mesh,std::string name) RigidBody* PhysicEngine::createRigidBody(std::string mesh,std::string name,float scale)
{ {
//get the shape from the .nif //get the shape from the .nif
mShapeLoader->load(mesh,"General"); mShapeLoader->load(mesh,"General");
BulletShapeManager::getSingletonPtr()->load(mesh,"General"); BulletShapeManager::getSingletonPtr()->load(mesh,"General");
BulletShapePtr shape = BulletShapeManager::getSingleton().getByName(mesh,"General"); BulletShapePtr shape = BulletShapeManager::getSingleton().getByName(mesh,"General");
shape->Shape->setLocalScaling(btVector3(scale,scale,scale));
//create the motionState //create the motionState
CMotionState* newMotionState = new CMotionState(this,name); CMotionState* newMotionState = new CMotionState(this,name);

View File

@ -135,7 +135,7 @@ namespace Physic
* Create a RigidBody.It does not add it to the simulation, but it does add it to the rigidBody Map, * Create a RigidBody.It does not add it to the simulation, but it does add it to the rigidBody Map,
* so you can get it with the getRigidBody function. * so you can get it with the getRigidBody function.
*/ */
RigidBody* createRigidBody(std::string mesh,std::string name); RigidBody* createRigidBody(std::string mesh,std::string name,float scale);
/** /**
* Add a RigidBody to the simulation * Add a RigidBody to the simulation