www.pudn.com > MyGame.rar > Application.h


#ifndef APPLICATION_H
#define APPLICATION_H

#include <Ogre.h>
#include <OIS/OIS.h>
#include <CEGUI/CEGUI.h>
#include <OgreCEGUIRenderer.h>

#include "NxOgre.h"
#include "InputHandler.h"

using namespace Ogre;
using namespace NxOgre;

class Application
{
friend class InputHandler;

public:
void go();

Application();

~Application();

private:
Root *mRoot;

OIS::Keyboard *mKeyboard;
OIS::Mouse *mMouse;
OIS::InputManager *mInputManager;
CEGUI::OgreCEGUIRenderer *mRenderer;
CEGUI::System *mSystem;
InputHandler *mInputHandler;
RenderWindow *mWindow;

Camera *mCamera;
SceneManager *mSceneMgr;
World* mWorld;
Scene* mScene;

enum ViewType
{
FREE,
WOW,
INTERNAL,
FRONT,
BACK,
FLY_BY
};
ViewType mViewType;

void createRoot();

void defineResources();

void setupRenderSystem();

void createRenderWindow();

void initializeResourceGroups();

void createScene();

void setupInputSystem();

void setupCEGUI();

void createFrameListener();

void startRenderLoop();
};


#endif