New DotSceneLoader header
New DotScene Loader - header
Welcome to the new Ogre Wiki!
If you haven't done so already, be sure to visit the Wiki Portal to read about how the wiki works. Especially the Ogre Wiki Overview page.
If you haven't done so already, be sure to visit the Wiki Portal to read about how the wiki works. Especially the Ogre Wiki Overview page.
#ifndef DOT_SCENELOADER_H #define DOT_SCENELOADER_H // Includes #include <Ogre/OgreString.h> #include <Ogre/OgreVector3.h> #include <Ogre/OgreQuaternion.h> #include <vector> // Forward declarations class TiXmlElement; namespace Ogre { // Forward declarations class SceneManager; class SceneNode; class nodeProperty { public: String nodeName; String propertyNm; String valueName; String typeName; nodeProperty(const String &node, const String &propertyName, const String &value, const String &type) : nodeName(node), propertyNm(propertyName), valueName(value), typeName(type) {} }; class DotSceneLoader { public: DotSceneLoader() : mSceneMgr(0) {} virtual ~DotSceneLoader() {} void parseDotScene(const String &SceneName, const String &groupName, SceneManager *yourSceneMgr, SceneNode *pAttachNode = NULL, const String &sPrependNode = ""); String getProperty(const String &ndNm, const String &prop); std::vector<nodeProperty> nodeProperties; std::vector<String> staticObjects; std::vector<String> dynamicObjects; protected: void processScene(TiXmlElement *XMLRoot); void processNodes(TiXmlElement *XMLNode); void processExternals(TiXmlElement *XMLNode); void processEnvironment(TiXmlElement *XMLNode); void processTerrain(TiXmlElement *XMLNode); void processUserDataReference(TiXmlElement *XMLNode, SceneNode *pParent = 0); void processUserDataReference(TiXmlElement *XMLNode, Entity *pEntity); void processOctree(TiXmlElement *XMLNode); void processLight(TiXmlElement *XMLNode, SceneNode *pParent = 0); void processCamera(TiXmlElement *XMLNode, SceneNode *pParent = 0); void processNode(TiXmlElement *XMLNode, SceneNode *pParent = 0); void processLookTarget(TiXmlElement *XMLNode, SceneNode *pParent); void processTrackTarget(TiXmlElement *XMLNode, SceneNode *pParent); void processEntity(TiXmlElement *XMLNode, SceneNode *pParent); void processParticleSystem(TiXmlElement *XMLNode, SceneNode *pParent); void processBillboardSet(TiXmlElement *XMLNode, SceneNode *pParent); void processPlane(TiXmlElement *XMLNode, SceneNode *pParent); void processFog(TiXmlElement *XMLNode); void processSkyBox(TiXmlElement *XMLNode); void processSkyDome(TiXmlElement *XMLNode); void processSkyPlane(TiXmlElement *XMLNode); void processClipping(TiXmlElement *XMLNode); void processLightRange(TiXmlElement *XMLNode, Light *pLight); void processLightAttenuation(TiXmlElement *XMLNode, Light *pLight); String getAttrib(TiXmlElement *XMLNode, const String ¶meter, const String &defaultValue = ""); Real getAttribReal(TiXmlElement *XMLNode, const String ¶meter, Real defaultValue = 0); bool getAttribBool(TiXmlElement *XMLNode, const String ¶meter, bool defaultValue = false); Vector3 parseVector3(TiXmlElement *XMLNode); Quaternion parseQuaternion(TiXmlElement *XMLNode); ColourValue parseColour(TiXmlElement *XMLNode); SceneManager *mSceneMgr; SceneNode *mAttachNode; String m_sGroupName; String m_sPrependNode; }; } #endif // DOT_SCENELOADER_H
Contributors to this page: jacmoe
.
Page last modified on Sunday 03 of January, 2010 00:27:57 GMT by jacmoe
.
The content on this page is licensed under the terms of the Creative Commons Attribution-ShareAlike License.
As an exception, any source code contributed within the content is released into the Public Domain.
Sidebar
Search box
Online users
45
online users

