*   >> Чтение Образование Статьи >> science >> programming

Создание 3D-игры с Огре - загрузка файла Scene

_ getDerivedPosition (); }

pParent-> LookAt (должность, relativeTo, localDirection); } Поймать (Огре :: Исключение & /* е * /) {LogManager :: getSingleton () LogMessage ("[DotSceneLoader] Ошибка обработки цель взгляд!"). }}

аннулированию DotSceneLoader :: processTrackTarget (TiXmlElement * XMLNode, SceneNode * pParent) {//атрибуты процесса Строка NODENAME = getAttrib (XMLNode, "NODENAME");

TiXmlElement * pElement;

//Процесс localDirection Vector3 localDirection = Vector3 :: NEGATIVE_UNIT_Z (?); pElement = XMLNode-> FirstChildElement ("localDirection"); если (pElement) localDirection = parseVector3 (pElement);

//Процесс смещения Vector3 смещение = Vector3 :: ZERO (?); pElement = XMLNode-> FirstChildElement ("смещение"); если (pElement) смещение = parseVector3 (pElement);

//подключение цель трек попытка {SceneNode * pTrackNode = mSceneMgr-> getSceneNode (имя узла); pParent-> setAutoTracking (правда, pTrackNode, localDirection, смещение); } Поймать (Огре :: Исключение & /* е * /) {LogManager :: getSingleton () LogMessage ("[DotSceneLoader] Ошибка обработки цель трек!").

}}

аннулированию DotSceneLoader :: processEntity (TiXmlElement * XMLNode, SceneNode * pParent) {//Процесс атрибуты имя String = getAttrib (XMLnode, "имя"); Строка ID = getAttrib (XMLNode, "ID"); Строка meshFile = getAttrib (XMLNode, "meshFile"); Строка materialFile = getAttrib (XMLNode, "materialFile"); BOOL isStatic = getAttribBool (XMLNode, "статический", ложь) ;; BOOL castShadows = getAttribBool (XMLNode, "castShadows", правда);

//ТЕМП: Ведение списка статических и динамических объектов, если (isStatic) staticObjects.push_back (имя); еще dynamicObjects.

push_back (имя);

TiXmlElement * pElement;

//Процесс VertexBuffer pElement = XMLNode-> FirstChildElement ("VertexBuffer") (?); если (pElement); //processVertexBuffer (pElement) (?);

//Процесс indexBuffer pElement = XMLNode-> FirstChildElement ("indexBuffer"); если (pElement); //processIndexBuffer (pElement); //Создание

сущность Сущность * pEntity = 0; попробуйте {MeshManager :: getSingleton () нагрузка (meshFile, m_sGroupName). pEntity = mSceneMgr-> CreateEntity (имя, meshFile); pEntity-> setCastShadows (castShadows); pParent-> attachObject (pEntity); (! materialFile.

empty ()), если

pEntity-> setMaterialName (materialFile); .} Поймать (Огре :: Исключение & /* е * /) {LogManage

Page    << <<  [11] [12] [13] >>
Copyright © 2008 - 2016 Чтение Образование Статьи,https://ru.nmjjxx.com All rights reserved.