//============================================================================= // NodeMaterialOrig //============================================================================= NodeMaterialOrig::NodeMaterialOrig( Ogre::SceneNode* sceneNode ) : NodeMaterial(), _sceneNode( sceneNode ) { for( Ogre::SceneNode::ObjectIterator it = sceneNode->getAttachedObjectIterator() ; it.hasMoreElements() ; it.moveNext() ) { Ogre::MovableObject * currentMO = it.peekNextValue() ; if ( currentMO->getMovableType() == Ogre::EntityFactory::FACTORY_TYPE_NAME ) { //OMTRACEID( "DEBUG", "Create entity " << currentMO->getName() ) ; _entities[ it.peekNextKey() ] = new EntityMaterialOrig( static_cast< Ogre::Entity *> ( currentMO ) ) ; } } for( Ogre::Node::ChildNodeIterator it = sceneNode->getChildIterator() ; it.hasMoreElements() ; it.moveNext() ) { Ogre::SceneNode* childSceneNode = static_cast< Ogre::SceneNode* >( it.peekNextValue() ) ; //OMTRACEID( "DEBUG", "Create ChildSceneNode " << childSceneNode->getName() ) ; NodeMaterialOrig* child = new NodeMaterialOrig( childSceneNode ) ; _childs.push_back( child ) ; } }