*   >> Lese Utdanning Artikler >> science >> programming

Å gjøre en 3D-spill med Ogre - åpner et vindu

cCamera = NULL; vindu = NULL;}

gjengi sløyfe er en kontinuerlig sløyfe som beregner neste ramme og viser den på skjermen. Gjengi sløyfe startes med StartRenderLoop funksjon

 void OgreEngineManager :: StartRenderLoop () {if (root.get ()) root-> startRendering ();}. 

SetupInputDevices funksjonen initialiserer OIS. Denne koden er hentet fra en Wiki-side på OIS, som har en detaljert oversikt over den initialisering prosessen

 void OgreEngineManager :: SetupInputDevices () {OIS :: ParamList pl.

; size_t windowHnd = 0; std :: ostringstream windowHndStr; vindus-> getCustomAttribute ("vindu", og windowHnd;); windowHndStr 0) mKeyboard = static_cast (mInputManager-> createInputObject (OIS :: OISKeyboard, false)); if (mInputManager-> getNumberOfDevices (OIS :: OISMouse)> 0) mMouse = static_cast (mInputManager-> createInputObject (OIS :: OISMouse, false));}

ShutdownInput rydder opp OIS. .

Igjen, se Wiki-side for mer informasjon om denne koden

 annullere OgreEngineManager :: ShutdownInput () {if (mInputManager) {if (mMouse) mInputManager-> destroyInputObject (mMouse); if (mKeyboard) mInputManager-> destroyInputObject (mKeyboard); OIS :: InputManager :: destroyInputSystem (mInputManager); mInputManager = NULL; }} 

SetupResources funksjonen er der noen Ogre ressursfiler er lastet.

Disse ressursfiler er definert av AddNewResourceLocation funksjon, som vil bli brukt i senere tutorials

 annullere OgreEngineManager :: SetupResources () {for (ResourceLocationDefinitionVector :: const_iterator ITER = resourceLocationDefinitionVector.begin ();.! ITER = resourceLocationDefinitionVector END (); ++ ITER) {ResourceGroupManager :: getSingleton () addResourceLocation ((* ITER.) .location, (* ITER) .type, (* ITER) .section); } ResourceGroupManager :: getSingleton () initialiseAllResourceGroups ();}.

Konfigurer funksjonen viser den første dialogboksen hvor videoalternativer er spesifisert. Hvis brukeren kansellert ut av boksen, denne funksjonen returnerer false. Ellers er det returnerer true

 bool OgreEngineManager :: Konfigurer () {if (root-> showConfigDialog ()) {vindu = root-> initial (sant, "OGRE."); return true; } Else {return false; }} 

windowClosed funksjonen kalles når vinduet er lukket. .

I dette tilfellet avbryter vi Ogre gjengi sløyfe og avslutning OIS

 annullere OgreEngineManager :: windowClosed (RenderWindow * rw) {ShutdownInput (); this-> StopRenderLoop ();} 

enterframe funksjonen kalles en

Page   <<  [1] [2] [3] [4] [5] >>
Copyright © 2008 - 2016 Lese Utdanning Artikler,https://utdanning.nmjjxx.com All rights reserved.