Показать сообщение отдельно
Старый 29.02.2008, 14:31   #12
Dronchik
AnyKey`щик
 
Регистрация: 13.07.2007
Сообщений: 7
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: IrrLicht - для новичков

Мне нужно было сделать колизии. Вот какое решение проблемы:
scene::IAnimatedMesh* l1v3levelmesh = smgr->getMesh("objects/land/level2.b3d");
  scene::ISceneNode* l1v3node = 0;

  driver->setTextureCreationFlag(video::ETCF_CREATE_MIP_MAPS, false);

 if (l1v3levelmesh)
    l1v3node = smgr->addOctTreeSceneNode(l1v3levelmesh->getMesh(0));
 scene::ITriangleSelector* selector = 0;

  if (l1v3node)
  {    
    l1v3node->setPosition(core::vector3df(0,-52,0));
    selector = smgr->createOctTreeTriangleSelector(l1v3levelmesh->getMesh(0), l1v3node, 128);
    l1v3node->setTriangleSelector(selector);
    selector->drop();
  }
  l1v3node->getMaterial(0).SpecularColor.set(0,0,0,0);

 scene::ISceneNodeAnimator* anim = smgr->createCollisionResponseAnimator(
    selector, camera, core::vector3df(30,10,30),
    core::vector3df(0,-2,0), 
    core::vector3df(0,50,0));
  camera->addAnimator(anim);
  anim->drop();
Сдесь загружаеться сцена в формате b3d( другие не колизяться) и создаёться детектирование колизий.
(Offline)
 
Ответить с цитированием