Bool OgreEngineManager :: Configure () {if (wortel-> showConfigDialog ()) {venster = wortel-> initialiseren (true, "OGRE."); return true; } Else {return false; }}De windowClosed functie wordt aangeroepen wanneer het venster is gesloten. . In dit geval stoppen we de Ogre maken lus en shutdown OIS
ongeldig OgreEngineManager :: windowClosed (RenderWindow * rw) {ShutdownInput (); this-> StopRenderLoop ();}De enterFrame functie wordt één keer per frame genoemd.
Hier
Bool OgreEngineManager :: frameStarted (const FrameEvent & evt) {mKeyboard-> capture vangen we elke input van de muis en het toetsenbord, en als de escape-toets ingedrukt we de lus te maken, waardoor het programma verlaat verlaten. (); mMouse-> capture (); if (mKeyboard-> isKeyDown (OIS :: KC_ESCAPE)) this-> StopRenderLoop (); terug engineManagerRunning;}ResourceLocationDefinition.
h
De ResourceLocationDefinition klasse bevat de informatie die nodig is door Ogre naar een externe bron te laden
# ifndef RESOURCELOCATIONDEFINITION_H_ # definiëren RESOURCELOCATIONDEFINITION_H_ # include "string" #include. "vector" struct ResourceLocationDefinition {ResourceLocationDefinition (std :: string type, std :: string locatie, sectie std :: string): type (type), locatie (locatie), sectie (sectie) {} ~ ResourceLocationDefinition () {} std :: string type; std :: string locatie; std :: strijkers;} typedef std :: vector ResourceLocationDefinitionVector; #endifmain.
cpp
Dit bestand bevat de belangrijkste functie, dat is de toegangspoort tot de toepassing. Hier beginnen we de OgreEngineManager, voer de lus maken, en vervolgens afsluiten van de OgreEngineManager. De ENGINEMANAGER definitie van OgreEngineManager.h, biedt een handige manier om toegang te krijgen tot de OgreEngineManager Singleton.
#include "OgreEngineManager.h" #if OGRE_PLATFORM == OGRE_PLATFORM_WIN32 # definiëren WIN32_LEAN_AND_MEAN # include "windows.h" INT WINAPI WinMain (HINSTANCE hInst, HINSTANCE, LPSTR strCmdLine, INT) #elseint main (int argc, char ** argv) #endif {if (ENGINEMANAGER.Startup (std :: string ("plugins.cfg"), std :: string ( "ogre.cfg"), std :: string ("ogre.log"))) ENGINEMANAGER.StartRenderLoop (); ENGINEMANAGER.Shutdown ();}
Het eindresultaat van al deze code is een zwart venster. Echter, met deze basis gelegd kunnen we beginnen met de 3D-objecten die
Het maken van een 3D-spel met Ogre - Laden van een Scene
- Vervoer naar de Irrlicht 3D-engine weet - Opening Een Window
- Exploitant Voorrang in Php
- Met behulp van Javascript String Regelmatige Expressions
- ActivePerl Variabele Types En Context
- Associatieve Container in C ++ Simplified
- Abstracte Base klasse in C ++
- Een live Twitter status update met YQL en JavaScript
- C # code voor het omzetten van cijfers woorden van nummer 1-100099 (Dotnet)
- Away3D Programming Tutorial - Milieu Material
- Farm management Software
NET - C # - Helper Mailer klasse voo…