bool OgreEngineManager :: frameStarted (vakio FrameEvent & EVT) {mKeyboard-> talteenotto (); mMouse-> talteenotto (); jos (mKeyboard-> isKeyDown (OIS :: KC_ESCAPE)) this-> StopRenderLoop (); palata engineManagerRunning;}ResourceLocationDefinition.h
ResourceLocationDefinition luokka sisältää tiedot tarvitsemat Ogre ladata ulkoisia resursseja.
#ifndef RESOURCELOCATIONDEFINITION_H_ # määritellä RESOURCELOCATIONDEFINITION_H_ # include "merkkijono" # include "vektori" struct ResourceLocationDefinition {ResourceLocationDefinition (std :: string tyyppi, std :: string sijainti, std :: string kohta): tyyppi (tyyppi), sijainti (paikka), jakso (jakso) {} ~ ResourceLocationDefinition () {} std :: string tyyppi; std :: string sijainti; std :: string osio,}; typedef std :: vektori ResourceLocationDefinitionVector; # endifMain.cpp
Tämä tiedosto sisältää päätehtävä, joka on yhteys siihen sovelluksen.
Tässä alamme OgreEngineManager, kirjoita tehdä silmukka, ja sitten tehdään shutdown OgreEngineManager. ENGINEMANAGER määritelmä, mistä OgreEngineManager.h, tarjoaa kätevän tavan käyttää OgreEngineManager yksittäiseksi.
# include "OgreEngineManager.h" #if OGRE_PLATFORM == OGRE_PLATFORM_WIN32 # määritellä WIN32_LEAN_AND_MEAN # include "windows.h" INT WINAPI WinMain (HINSTANCE hInst, HINSTANCE, LPSTR strCmdLine, INT) #elseint main (int argc, char ** argv) # endif {jos (ENGINEMANAGER.Startup (std :: string ("plugins.cfg"), std :: string ( "ogre.cfg"), std :: string ("ogre.log '))) ENGINEMANAGER.StartRenderLoop (); ENGINEMANAGER.Shutdown ();}
Lopputuloksena kaikki tämä koodi on musta ikkuna. Kuitenkin tämä pohjatyö noudattaen voimme aloittaa lisäämällä 3D-objekteja, jotka muodostavat peli.