| Rev | Line |   | 
|---|
| [123] | 1 | #include "Orxonox.h" | 
|---|
 | 2 |  | 
|---|
 | 3 |  | 
|---|
 | 4 | void Orxonox::go(void) | 
|---|
 | 5 | { | 
|---|
 | 6 |         if (!setup()) | 
|---|
 | 7 |                 return; | 
|---|
 | 8 |  | 
|---|
 | 9 |         mTimer = new Timer(); | 
|---|
 | 10 |  | 
|---|
 | 11 |         unsigned long lastTime = mTimer->getMilliseconds(); | 
|---|
 | 12 |  | 
|---|
 | 13 |         while (true) | 
|---|
 | 14 |         { | 
|---|
 | 15 |                 //Pump messages in all registered RenderWindow windows | 
|---|
 | 16 |                 WindowEventUtilities::messagePump(); | 
|---|
 | 17 |  | 
|---|
 | 18 |                 mOgre->getRoot()->renderOneFrame(); | 
|---|
 | 19 |  | 
|---|
 | 20 |                 if (!mRunMgr->tick(mTimer->getMilliseconds(), (mTimer->getMilliseconds() - lastTime) / 1000.0)) | 
|---|
 | 21 |                         break; | 
|---|
 | 22 |                 lastTime = mTimer->getMilliseconds(); | 
|---|
 | 23 |         } | 
|---|
 | 24 |  | 
|---|
 | 25 |         // clean up | 
|---|
 | 26 |         destroy(); | 
|---|
 | 27 | } | 
|---|
 | 28 |  | 
|---|
 | 29 | bool Orxonox::setup(void) | 
|---|
 | 30 | { | 
|---|
 | 31 |         // create new 3D ogre render engine | 
|---|
 | 32 |         mOgre = new OgreControl(); | 
|---|
 | 33 |         mOgre->initialise(); | 
|---|
 | 34 |  | 
|---|
 | 35 |         mRunMgr = new RunManager(mOgre); | 
|---|
 | 36 |  | 
|---|
 | 37 |         return true; | 
|---|
 | 38 | } | 
|---|
 | 39 |  | 
|---|
 | 40 |  | 
|---|
 | 41 | void Orxonox::destroy() | 
|---|
 | 42 | { | 
|---|
 | 43 |         if (mTimer) | 
|---|
 | 44 |                 delete mTimer; | 
|---|
 | 45 |         if (mRunMgr) | 
|---|
 | 46 |                 delete mRunMgr; | 
|---|
 | 47 |         if (mOgre) | 
|---|
 | 48 |                 delete mOgre; | 
|---|
 | 49 | } | 
|---|
       
      
      Note: See 
TracBrowser
        for help on using the repository browser.