最近开始用OGRE这款引擎想做点东西,在网上查资料发现虽然说OGRE已经算是资料很多的了,但是依然存在不少问题,会让初学者摸不着头脑,其实这些问题都是很基本的问题,比如说如何对OGRE进行配置,我下载的OgreSDKSetup1.6.0_VC71,直接解压安装这个文件。
OGRE在Visual Studio2003下配置步骤
1.配置Direct3D9开发环境
- 打开VC++2003,选择菜单[工具]=>[选项]=>[Projects]=>[VC++目录],在包含文件目录中包含Direct3D9 SDK安装目录下的Include目录,在库文件目录中包含Direct3D9 SDK安装目录下的Lib目录
2.配置OGRE开发环境
- 打开VC++2003,选择菜单[工具]=>[选项]=>[Projects]=>[VC++目录],在包含文件目录中包含OGRE SDK安装目录下的Include目录,在库文件目录中包含OGRE SDK安装目录下的Lib目录.
以上这几个步骤做完,OGRE的运行环境就基本上完成了。
但是,http://www.ogre3d.cn/ 上的初级教程按照以上的配置是无法正常编译的,因为还缺少一些东西。
好多的朋友阅读了 初级教程 发现无法编译,这不是编译环境的问题,你这个时侯运行OGRE的例题是可以编译通过的。问题不在以上编译环境不对,而是初级教程中的一些必要文件。首先 "ExampleApplication.h" 这个文件就找不到,因为他在 "E:\Program Files\OgreSDK\samples\include" 下面,所以 [工具]=>[选项]=>[Projects]=>[VC++目录],在包含文件目录中包含OGRE SDK安装目录下的Include目录这里要加这一个路径。
即使这样能够找到头文件进行编译了,但是还是无法正常编译通过,很多的无法编译外部符号,这一般是lib库缺失的问题,需要在项目中的附加依赖项里增加 OgreMain_d.lib OIS_d.lib 两个库。
有的时候他还会报告动态链接库的错误,为了减少麻烦,我们把编辑器的工作目录设置到 “OgreSDK安装目录\OgreSDK\bin\debug”下,就OK了
这样以下的代码就可以正常运行了~~
- #include "ExampleApplication.h"
-
- class TutorialApplication : public ExampleApplication
- {
- protected:
- public:
- TutorialApplication()
- {
- }
-
- ~TutorialApplication()
- {
- }
- protected:
- void createScene(void)
- {
- }
- };
-
- #if OGRE_PLATFORM == OGRE_PLATFORM_WIN32
- #define WIN32_LEAN_AND_MEAN
- #include "windows.h"
-
- INT WINAPI WinMain( HINSTANCE hInst, HINSTANCE, LPSTR strCmdLine, INT )
- #else
- int main(int argc, char **argv)
- #endif
- {
- // Create application object
- TutorialApplication app;
-
- try {
- app.go();
- } catch( Exception& e ) {
- #if OGRE_PLATFORM == OGRE_PLATFORM_WIN32
- MessageBox( NULL, e.getFullDescription().c_str(), "An exception has occured!", MB_OK | MB_ICONERROR | MB_TASKMODAL);
- #else
- fprintf(stderr, "An exception has occured: %s\n",
- e.getFullDescription().c_str());
- #endif
- }
-
- return 0;
- }
复制代码运行以后什么都看不到,这不是错误,因为这个本身就是得到的是一个黑色的屏幕,上面有OGRE的图标和FPS。
[此贴子已经被作者于2009-2-25 17:01:00编辑过] |