本文主要是介绍Windows下ogre编译安装,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.下载源码
打开ogre官网Download OGRE | OGRE - Open Source 3D Graphics Engine (ogre3d.org)链接,弹出如下界面(注意:下面界面是截至2022年8月14日的,后期网站更新,界面可能和这有不一样):
点击绿色方框的链接,下载源码。蓝色方框是如何编译ogre库的链接,读者也可以通过此链接来编译ogre。
2.利用CMake编译
去CMake官网CMake下载CMake编译工具。注意:必须保证CMake版本>= 3.10。
在ogre源码的同一目录新建一个目录,用于存放编译生成的中间文件、库等,如build。如下:
打开CMake,在“where is the source code”编辑框选择ogre源码目录, 在“where to build the binaries”目录选择刚才新建的build目录,如下:
注意:目录路径不能有中文,否则CMake会报错。
ogre在编译时,需要用到一些必要的库,如下:
- pugixml: https://github.com/zeux/pugixml
- SDL: Simple DirectMedia Layer - Homepage
- zlib: http://www.zlib.net
- freetype: http://www.freetype.org
对于某些功能开发,还需要用到某些如下的可选库:
- DirectX SDK: Developer tools, technical documentation and coding examples | Microsoft Docs
- Vulkan SDK: LunarXchange
- FreeImage: http://freeimage.sourceforge.net
- Doxygen: http://doxygen.org
- Cg: Cg Toolkit | NVIDIA Developer
- Remotery: GitHub - Celtoys/Remotery: Single C file, Realtime CPU/GPU Profiler with Remote Web Viewer
- SWIG: Simplified Wrapper and Interface Generator
- Assimp: The Asset-Importer-Lib Documentation — Asset-Importer-Lib December 2020 documentation
注意:当你的电脑联网时,在利用CMake编译时,CMake会自动去官网下载必要库,当没联网时,你得自己下载,然后放到build下。
在CMake中选择“Tools->Configure”弹出如下界面:
根据你本机装的VS选择vs的版本,我本机装的vs2019。注意:后面一项得选x64,相信现在用win32的已经很少了。
单击Finish按钮,关闭该对话框后,如果以前没下载过必要的第三库且本机可以上网,则此步骤会自动从网上下载并编译前文提到的必要库,编译出来的库存放在ogre\build\Dependencies相应目录下,估计需要等待一段时间。
待右下角进度条走到头后,单击左下角的“Gnererate”,稍等一会后,就会在build目录下生成.sln解决方案文件。用Visual Studio 2019打开它进行编译,编译过程中可能会产生如下错误:
这些错误产生的原因是:必要的依赖库不匹配造成的。以报错的Codec_Assimp工程为例,解决方法如下:
- 在build目录下找到assimp-X.X.X目录(X表示版本号),用Visual Studio 2019打开Assimp.sln。
- 找到assimp工程,在其上单击鼠标右键,配置属性下拉框中选择相应的版本,如:Debug、Release,然后选择“配置属性->C++->代码生成”属性页中的“运行库”下拉框中选择和Codec_Assimp工程中该属性相同的值,如都设置为“多线程调试 DLL (/MDd)” 。如下为Codec_Assimp工程配置:
如下为assimp工程配置:
3.编译assimp工程,将生成的lib拷贝到build\Dependencies\lib目录。
注意:
如果是未联网状态,CMake就自动下载不了该工程,步骤1中就不会assimp-X.X.X目录,此时请自行按前文提供的官网下载该工程并自行编译且存放到ogre\build\Dependencies相应目录下。
类似地,对其它报错的工程进行处理,如:OgreBullet报错是因为build\bullet3-3.24目录下的BULLET_PHYSICS工程、OgreXMLConverter报错是因为build\pugixml-1.12下的pugixml工程都需要按assimp工程配置方法进行配置。当这些全部搞好后,再此编译,就可以全部成功,至此Windows下的Ogre编译全部完成。
这篇关于Windows下ogre编译安装的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!