#include <ogrestartup.h>

Definition at line 12 of file ogrestartup.h.
Public Member Functions | |
| OgreStartup () | |
| ~OgreStartup () | |
| virtual void | go (void) |
Protected Member Functions | |
| void | startLog (void) |
| virtual void | createRoot (void) |
| virtual void | createFrameListener (void)=0 |
| virtual void | createScene (void)=0 |
| virtual void | createCamera (void) |
| virtual void | createRenderWindow (void) |
| virtual void | initializeResourceGroups (void) |
| virtual void | defineResources (void) |
| virtual void | setupCEGUI (void) |
| virtual void | setupRenderSystem (void) |
| virtual void | setupScene (void) |
| virtual void | setupViewport (void) |
| virtual void | setupInputSystem (void) |
| virtual void | setupAudioSystem (void) |
| virtual void | windowResized (RenderWindow *rw) |
| virtual void | startRenderLoop (void) |
Protected Attributes | |
| Camera * | mCamera |
| CEGUI::OgreCEGUIRenderer * | mRenderer |
| CEGUI::System * | mSystem |
| OgreAL::SoundManager * | mSoundMgr |
| OIS::InputManager * | mInputManager |
| OIS::Keyboard * | mKeyboard |
| OIS::Mouse * | mMouse |
| RenderWindow * | mWindow |
| Root * | mRoot |
| SceneManager * | mSceneMgr |
| OgreStartup::OgreStartup | ( | ) |
| OgreStartup::~OgreStartup | ( | ) |
Definition at line 8 of file ogrestartup.cpp.
References mInputManager, mKeyboard, mMouse, mRenderer, mRoot, mSystem, and mWindow.
00008 { 00009 WindowEventUtilities::removeWindowEventListener(mWindow, this); 00010 mInputManager->destroyInputObject(mKeyboard); 00011 mInputManager->destroyInputObject(mMouse); 00012 OIS::InputManager::destroyInputSystem(mInputManager); 00013 delete mSystem; 00014 delete mRenderer; 00015 delete mRoot; 00016 }
| void OgreStartup::go | ( | void | ) | [virtual] |
Definition at line 18 of file ogrestartup.cpp.
References createCamera(), createFrameListener(), createRenderWindow(), createRoot(), createScene(), defineResources(), initializeResourceGroups(), setupCEGUI(), setupInputSystem(), setupRenderSystem(), setupScene(), setupViewport(), startLog(), and startRenderLoop().
00018 { 00019 startLog(); 00020 createRoot(); 00021 defineResources(); 00022 setupRenderSystem(); 00023 createRenderWindow(); 00024 setupScene(); 00025 createCamera(); 00026 setupViewport(); 00027 initializeResourceGroups(); 00028 // setupAudioSystem(); 00029 setupCEGUI(); 00030 setupInputSystem(); 00031 createScene(); 00032 createFrameListener(); 00033 startRenderLoop(); 00034 }

| void OgreStartup::startLog | ( | void | ) | [protected] |
Definition at line 36 of file ogrestartup.cpp.
Referenced by go().
00036 { 00037 LogManager *logMgr = new LogManager(); 00038 logMgr->createLog("OgreViewer.log",true, true, false); 00039 }

| void OgreStartup::createRoot | ( | void | ) | [protected, virtual] |
Definition at line 41 of file ogrestartup.cpp.
References mRoot.
Referenced by go().
00041 { 00042 mRoot = new Root(); 00043 }

| virtual void OgreStartup::createFrameListener | ( | void | ) | [protected, pure virtual] |
| virtual void OgreStartup::createScene | ( | void | ) | [protected, pure virtual] |
| void OgreStartup::createCamera | ( | void | ) | [protected, virtual] |
Definition at line 83 of file ogrestartup.cpp.
References mCamera, and mSceneMgr.
Referenced by go().
00083 { 00084 mCamera = mSceneMgr->createCamera("DefaultCamera"); 00085 mCamera->setNearClipDistance(5); 00086 mCamera->setFarClipDistance(8000); 00087 mSceneMgr->getRootSceneNode()->createChildSceneNode("CameraNode")->attachObject(mCamera); 00088 }

| void OgreStartup::createRenderWindow | ( | void | ) | [protected, virtual] |
Definition at line 67 of file ogrestartup.cpp.
References mRoot, and mWindow.
Referenced by go().
00067 { 00068 mWindow = mRoot->initialise(true, "Desert Challenge"); 00069 #ifdef DEBUG 00070 //mWindow->setFullscreen(false,800,600); 00071 //mWindow->resize(800,600); 00072 #endif 00073 }

| void OgreStartup::initializeResourceGroups | ( | void | ) | [protected, virtual] |
Definition at line 75 of file ogrestartup.cpp.
Referenced by go().

| void OgreStartup::defineResources | ( | void | ) | [protected, virtual] |
Definition at line 45 of file ogrestartup.cpp.
Referenced by go().
00045 { 00046 String secName, typeName, archName; 00047 ConfigFile cf; 00048 cf.load("resources.cfg"); 00049 ConfigFile::SectionIterator seci = cf.getSectionIterator(); 00050 while(seci.hasMoreElements()){ 00051 secName = seci.peekNextKey(); 00052 ConfigFile::SettingsMultiMap *settings = seci.getNext(); 00053 ConfigFile::SettingsMultiMap::iterator i; 00054 for(i = settings->begin(); i!= settings->end(); ++i){ 00055 typeName = i->first; 00056 archName = i->second; 00057 ResourceGroupManager::getSingleton().addResourceLocation(archName, typeName, secName); 00058 } 00059 } 00060 }

| void OgreStartup::setupCEGUI | ( | void | ) | [protected, virtual] |
Definition at line 132 of file ogrestartup.cpp.
References mRenderer, mRoot, mSceneMgr, mSystem, and mWindow.
Referenced by go().
00132 { 00133 mWindow = mRoot->getAutoCreatedWindow(); 00134 mRenderer = new CEGUI::OgreCEGUIRenderer(mWindow, Ogre::RENDER_QUEUE_OVERLAY, false, 3000, mSceneMgr); 00135 mSystem = new CEGUI::System(mRenderer); 00136 }

| void OgreStartup::setupRenderSystem | ( | void | ) | [protected, virtual] |
Definition at line 62 of file ogrestartup.cpp.
References mRoot.
Referenced by go().
00062 { 00063 if(!mRoot->restoreConfig() && !mRoot->showConfigDialog()) 00064 throw Exception(52, "User canceled the config dialog.", "OgreStartup::setupRenderSystem()"); 00065 }

| void OgreStartup::setupScene | ( | void | ) | [protected, virtual] |
| void OgreStartup::setupViewport | ( | void | ) | [protected, virtual] |
Definition at line 90 of file ogrestartup.cpp.
References mCamera, and mWindow.
Referenced by go().
00090 { 00091 Viewport *vp = mWindow->addViewport(mCamera); 00092 vp->setBackgroundColour( ColourValue(0, 0, 0.0) ); 00093 mCamera->setAspectRatio( Real(vp->getActualWidth()) / Real(vp->getActualHeight()) ); 00094 TextureManager::getSingleton().setDefaultNumMipmaps(9); 00095 }

| void OgreStartup::setupInputSystem | ( | void | ) | [protected, virtual] |
Definition at line 97 of file ogrestartup.cpp.
References mInputManager, mKeyboard, mMouse, mRoot, mWindow, and windowResized().
Referenced by go().
00097 { 00098 size_t windowHnd = 0; 00099 std::ostringstream windowHndStr; 00100 OIS::ParamList pl; 00101 RenderWindow *win = mRoot->getAutoCreatedWindow(); 00102 00103 win->getCustomAttribute("WINDOW",&windowHnd); 00104 windowHndStr << windowHnd; 00105 pl.insert(std::make_pair(std::string("WINDOW"), windowHndStr.str())); 00106 mInputManager = OIS::InputManager::createInputSystem(pl); 00107 00108 try{ 00109 mKeyboard = static_cast<OIS::Keyboard*>(mInputManager->createInputObject(OIS::OISKeyboard, false)); 00110 }catch(const OIS::Exception &e){ 00111 throw Exception(42, e.eText, "OgreStartup::setupInputSystem"); 00112 } 00113 // THIS games itself has no need of mouse, so if it failes, we just ignore 00114 try{ 00115 mMouse = static_cast<OIS::Mouse*>(mInputManager->createInputObject(OIS::OISMouse, true)); 00116 }catch(...){ 00117 mMouse = 0; 00118 } 00119 windowResized(mWindow); 00120 WindowEventUtilities::addWindowEventListener(mWindow, this); 00121 }


| void OgreStartup::setupAudioSystem | ( | void | ) | [protected, virtual] |
Definition at line 138 of file ogrestartup.cpp.
References mSoundMgr.
00138 { 00139 mSoundMgr = new OgreAL::SoundManager(); 00140 }
| void OgreStartup::windowResized | ( | RenderWindow * | rw | ) | [protected, virtual] |
Definition at line 123 of file ogrestartup.cpp.
References mMouse.
Referenced by setupInputSystem().
00123 { 00124 unsigned int width, height, depth; 00125 int left, top; 00126 rw->getMetrics(width, height, depth, left, top); 00127 const OIS::MouseState &ms = mMouse->getMouseState(); 00128 ms.width = width; 00129 ms.height = height; 00130 }

| void OgreStartup::startRenderLoop | ( | void | ) | [protected, virtual] |
Definition at line 142 of file ogrestartup.cpp.
References mRoot.
Referenced by go().
00142 { 00143 mRoot->startRendering(); 00144 }

Camera* OgreStartup::mCamera [protected] |
Definition at line 35 of file ogrestartup.h.
Referenced by createCamera(), OgreViewer::createFrameListener(), and setupViewport().
CEGUI::OgreCEGUIRenderer* OgreStartup::mRenderer [protected] |
CEGUI::System* OgreStartup::mSystem [protected] |
OgreAL::SoundManager* OgreStartup::mSoundMgr [protected] |
OIS::InputManager* OgreStartup::mInputManager [protected] |
OIS::Keyboard* OgreStartup::mKeyboard [protected] |
Definition at line 40 of file ogrestartup.h.
Referenced by OgreViewer::createFrameListener(), OgreViewer::frameStarted(), setupInputSystem(), and ~OgreStartup().
OIS::Mouse* OgreStartup::mMouse [protected] |
Definition at line 41 of file ogrestartup.h.
Referenced by OgreViewer::createFrameListener(), setupInputSystem(), windowResized(), and ~OgreStartup().
RenderWindow* OgreStartup::mWindow [protected] |
Definition at line 42 of file ogrestartup.h.
Referenced by createRenderWindow(), OgreViewer::frameStarted(), setupCEGUI(), setupInputSystem(), setupViewport(), and ~OgreStartup().
Root* OgreStartup::mRoot [protected] |
Definition at line 43 of file ogrestartup.h.
Referenced by OgreViewer::createFrameListener(), createRenderWindow(), createRoot(), setupCEGUI(), setupInputSystem(), setupRenderSystem(), setupScene(), startRenderLoop(), and ~OgreStartup().
SceneManager* OgreStartup::mSceneMgr [protected] |
Definition at line 44 of file ogrestartup.h.
Referenced by createCamera(), OgreViewer::createFrameListener(), OgreViewer::createScene(), OgreViewer::frameStarted(), setupCEGUI(), and setupScene().
1.5.6