本次教程的主要目的是介绍一下OGRE最基础的构架:
1.场景管理器
2.场景节点
3.实体
虽然本次教程不会接触到太多的代码,而是把侧重点放在了基础知识的讲解上,但是希望大家一点一点积累对代码的理解,这样才能更彻底的理解一些抽象的概念。
我们先新建一个OGRE项目,OgreApp01。
添加一个h文件TutorialApplication.h,在里面添加如下内容:
#include "ExampleApplication.h"
class TutorialApplication : public ExampleApplication
{
public:
TutorialApplication()
{
}
~TutorialApplication()
{
}
protected:
void createScene(void)
{
}
};
这是一个继承了ExampleApplication的应用类。在创建应用的初期,我们需要依赖ExampleApplication来创建并运行我们的项目,在后面的学习过程中会慢慢脱离它并创建完全属于自己的应用。
再创建一个新的cpp文件,TutorialApplication.cpp:
#include "TutorialApplication.h"
#include "windows.h"
INT WINAPI WinMain( HINSTANCE hInst, HINSTANCE, LPSTR strCmdLine, INT )
{
TutorialApplication app;
try
{
app.go();
}
catch( Exception& e )
{
MessageBox( NULL, e.getFullDescription().c_str(), "An exception has occured!", MB_OK | MB_ICONERROR | MB_TASKMODAL);
}
}
在此为了避免复杂,我删去了很多判断环境的语句,该项目在win32环境下可以运行。运行的结果如下:
没错,它弹出了一个OGRE的渲染选项界面,点击OK运行: