*   >> Lectura Educación Artículos >> science >> programación

Haciendo un juego 3D con Ogre - Apertura de una Window

nte volvemos true para indicar que Ogre se ha inicializado correctamente

 return true;} 

La función de desconexión se limpia todos los recursos de Ogre. Empezamos quitando el objeto OgreEngineManager de la lista de FrameListeners y WindowEventListeners. Esto es un poco redundante, porque la destrucción del objeto raíz va a hacer esto de todos modos, pero no hace daño a la través

 anulará OgreEngineManager :: apagado () {root-> removeFrameListener (esto).

; WindowEventUtilities :: removeWindowEventListener (ventana, este);

El Ogro Root se elimina entonces

 root.reset ();. 

Y el resto de variables se establecen de nuevo a NULL

 genericCamera = NULL; ventana = NULL;} 

El bucle de render es un bucle continuo que calcula el siguiente fotograma y luego lo muestra en la pantalla. El bucle de render se inicia con la función StartRenderLoop

 vacío OgreEngineManager :: StartRenderLoop () {if (root.get ()) Raíz> startRendering ();}. 

La función SetupInputDevices inicializa OIS.

Este código se toma de una página Wiki en OIS, que tiene un desglose detallado del proceso de inicialización

 void OgreEngineManager :: SetupInputDevices () {OIS :: paramlist pl.; size_t windowHnd = 0; std :: ostringstream windowHndStr; ventana-> GetCustomAttribute ("ventana", y windowHnd;); windowHndStr 0) mKeyboard = static_cast (mInputManager-> createInputObject (OIS :: OISKeyboard, false)); si (mInputManager-> getNumberOfDevices (OIS :: OISMouse)> 0) mMouse = static_cast (mInputManager-> createInputObject (OIS :: OISMouse, false));} 

El ShutdownInput limpia OIS. .

Una vez más, consulte la página Wiki para más información sobre este código

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

La función SetupResources es donde se cargan los archivos de recursos de Ogre.

Estos archivos de recursos se definen por la función AddNewResourceLocation, que se utilizará en tutoriales posteriores

 anulará OgreEngineManager :: SetupResources () {for (ResourceLocationDefinitionVector :: const_iterator iter = resourceLocationDefinitionVector.begin ();.! Iter = resourceLocationDefinitionVector .end (); ++ iter) {ResourceGroupManager :: getSingleton () addResourceLocation ((* iter.) .locati

Page   <<  [1] [2] [3] [4] [5] [6] >>
Copyright © 2008 - 2016 Lectura Educación Artículos,https://lectura.nmjjxx.com All rights reserved.