*   >> Leitura Educação Artigos >> science >> programação

Fazendo um jogo 3D com Ogre - Abrindo uma janela

e processamento é parado. * /Void StartRenderLoop (); /** Pára o loop de renderização * /StopRenderLoop void () {engineManagerRunning = false;} /** Adiciona um recurso local a ser carregado. Deve ser chamado antes de inicialização é chamado. * /AddNewResourceLocation void (const ResourceLocationDefinition & definição) {resourceLocationDefinitionVector.push_back (definição);} /** Chamado quando a janela é fechada. * /Void windowClosed (RenderWindow * rw); /** Chamado uma vez por quadro. * /Bool frameStarted (const FrameEvent & EVT); protegido: /** Construtor. Inicializa variáveis.

* /OgreEngineManager (); /** Recursos carga a partir do arquivo de configuração. * /SetupResources void (); /** Exibir caixa de diálogo de configuração para solicitar opções de gráficos. * /Bool Configure (); /** Dispositivos de entrada de configuração. * /SetupInputDevices void (); ///OGRE Root raiz std :: auto_ptr; ///OGRE Câmara Câmara Padrão * genericCamera; ///OGRE RenderWIndow RenderWindow * janela; ///Sinalizador que indica se o loop de renderização ainda está em execução bool engineManagerRunning; ///Locais de recursos ResourceLocationDefinitionVector resourceLocationDefinitionVector; //OIS Aparelhamento de introdução OIS :: InputManager * mInputManager; OIS :: Rato * mmouse; OIS :: Keyboard * mKeyboard;};.

# Endif /* OGREENGINEMANAGER_H_ * /

EngineManager.cpp

O construtor é usado para definir todos os ponteiros para NULL

 /* * OgreEngineManager.cpp * * Criado em: 18/12/2009 * Autor: Matthew Casperson * /# incluem "iostream" #include "sstream" #include "OgreEngineManager.h" OgreEngineManager :: OgreEngineManager (): root (NULL), genericCamera (NULL), a janela (NULL), engineManagerRunning (true) {} 

O processo de destruição não faz nada.

 OgreEngineManager :: ~ OgreEngineManager () {} 

Toda a inicialização é feita em uma função chamado Startup.

Isso ocorre porque a classe OgreEngineManager é um solteirão, e um dos problemas com o uso singletons é que você não pode realmente ter certeza de quando eles serão destruídos. Para contornar esta situação todo o initialistion é feito na função de inicialização, e toda a destruição é feito em uma função chamada Shutdown. A função aleatório será usado um pouco no jogo, então começamos semeando a função aleatório com o tempo atual, que é uma forma muito comum para gerar uma semente aleatória.


 bool OgreEngineManager :: Startup ( const std :: string pluginFileName, const std :: configFilen

Page   <<  [1] [2] [3] [4] [5] [6] >>
Copyright © 2008 - 2016 Leitura Educação Artigos,https://artigos.nmjjxx.com All rights reserved.