This Snippet is just an example of its use not a complete program.
Code: Select all
// Add A Tree Mesh
IAnimatedMesh* tree = smgr->getMesh("media/tree.x");// Declare Trees
IAnimatedMeshSceneNode* tree_node = smgr->addAnimatedMeshSceneNode(tree);
// Initialize a Triangle Selector.
ITriangleSelector* tree_selector = 0;
// Initialize a Meta Triangle selector
IMetaTriangleSelector * metaSelector = smgr->createMetaTriangleSelector();
// Declare the position of the trees
if (tree_node)////// Trees ////////////
{
tree_node->setMaterialFlag(EMF_LIGHTING, false);
tree_node->setScale(vector3df(100,100,100));
tree_node->setPosition(vector3df(3999,200,1000));
tree_selector = smgr->createOctTreeTriangleSelector(tree->getMesh(0), tree_node, 128);
metaSelector->addTriangleSelector(tree_selector);
tree_selector->drop();
tree_node = smgr->addAnimatedMeshSceneNode(tree);
tree_node->setMaterialFlag(EMF_LIGHTING, false);
tree_node->setScale(vector3df(100,100,100));
tree_node->setPosition(vector3df(4300,200,1200));
tree_selector = smgr->createOctTreeTriangleSelector(tree->getMesh(0), tree_node, 128);
metaSelector->addTriangleSelector(tree_selector);
tree_selector->drop();
tree_node = smgr->addAnimatedMeshSceneNode(tree);
tree_node->setMaterialFlag(EMF_LIGHTING, false);
tree_node->setScale(vector3df(100,100,100));
tree_node->setPosition(vector3df(4000,200,-1233));
tree_selector = smgr->createOctTreeTriangleSelector(tree->getMesh(0), tree_node, 128);
metaSelector->addTriangleSelector(tree_selector);
tree_selector->drop();
}
tree_selector = smgr->createOctTreeTriangleSelector(
tree->getMesh(0), tree_node, 128); // Declares which mesh and node it is assigned to
camera->setTriangleSelector(tree_selector);// Sets the camera to the bass selector
tree_selector->drop();
// Drop selector
// create collision response animator and attach it to the camera
ISceneNodeAnimator* anim4 = smgr->createCollisionResponseAnimator(
metaSelector, camera, core::vector3df(60,100,60),
core::vector3df(0,0,0), // This Sets Gravity VERY important, -1 keeps you grounded
core::vector3df(0,0,0));
metaSelector->drop();
camera->addAnimator(anim4);// Camera add animatior
anim4->drop();// drop animator
This is just a snippet don't flame me but comments are welcome.