Code: Select all
void LoadLevel(IAnimatedMesh* Mesh,ISceneNode* Node,ITriangleSelector* Selector,const c8* ZipFile,const c8* BspFile,ICameraSceneNode* Camera,ISceneNodeAnimator* Anim)
{
Device->getFileSystem()->addZipFileArchive(ZipFile);
if(Mesh)
{
Mesh=Smgr->getMesh(BspFile);
}
if(Node)
{
Node->setPosition(vector3df(-1370,-130,-1400));
Selector=Smgr->createOctTreeTriangleSelector(Mesh->getMesh(0),Node,128);
Node->setTriangleSelector(Selector);
Selector->drop();
}
Anim=Smgr->createCollisionResponseAnimator(Selector,Camera,vector3df(30,50,30),vector3df(0,-50,0),19000.0f,vector3df(0,50,0));
Camera->addAnimator(Anim);
Anim->drop();
}Code: Select all
IAnimatedMesh* Level;
ISceneNode* NodeLevel;
ITriangleSelector* TriangleSelector;
ISceneNodeAnimator* LevelAnim;
LoadLevel(Level,NodeLevel,TriangleSelector,"../../media/map-20kdm2.pk3","20kdm2.bsp",Camera,LevelAnim);