网上有一段源代码如下:
#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
MessageBoxA( NULL, e.getFullDescription().c_str(), "An exception has occurred!", MB_OK | MB_ICONERROR | MB_TASKMODAL);
#else
fprintf(stderr, "An exception has occurred: %s ",
e.getFullDescription().c_str());
#endif
}
return0;
}
问题一:编译链接是无法通过,
一是头文件#include "ExampleApplication.h";
二是静态链接库..\boost_1_47\lib\libboost_thread-vc100-mt-gd-1_47.lib
这两个好解决,只要在工程属性中添加相应路径即可。我第一次静态链接库的路径写错了,写到了“引用路径”中,还奇怪为什么添加了路径还是找不到链接库。
三是这两个库要手动加一下
#pragma comment(lib, "OgreMain_d.lib")
#pragma comment(lib, "OIS_d.lib")
问题二:运行中断(后来又不中断了,汗一个 =_=!),就是运行之后没有任何反映;
第一,将..\bin\debug 文件夹下的所有 .cfg 文件拷到工程目录下;
第二,将..\media 目录整个拷贝到和解决方案目录的平行目录下。
这个问题可能是我的环境变量配置的不完整,或者有其他问题。
我也希望尽量在不拷贝目录和文件的情况下能够成功编译执行该示例。
还望高手指教……
++++++++++++++++++++++
差点忘了,补充一下,我用的是vs2010,和相应版本的 Ogre SDK。