OGRE 1.7.2 [Cthugha] 编译配置全过程方法
最近老师说让我们学习一下OGRE场景编辑器,网上搜索了很久,最后搜索到了Ogitor学做编辑器的方法,前提是要先编译好OGRE,于是,我就开始看网上的各种资料来学习OGRE,由于没人给予指导,都是自己一点点在网上看别人博客上总结的方法和自己的摸索总结出来的一些方法。。
首先说一下我会介绍两种办法来配置: SDK 和源码
首先申明一下: 我的环境. Win7 + VS2008 + DirectX SDK (February 2010)
一、SDK(这个不需要进行源码编译)
这个版本,主要是为那些需要用OGRE,但是不打算研究的。
学过DirectX的人都应指导SDK应怎么配置吧,就是配置lib 和 include: 但是由于OGRE中引入Bosst(这个即将引入标准库的,类似STL)的东西,所以还是需要配置一下Boost的lib和include库,不过你没必要自己去下,OGRE里面就有,下面说说详细的:
1、首先到OGRE的官网下载SDK:最新版本是1.7.2:根据自己的平台和编译器,下载合适的版本网址:http://www.ogre3d.org/download/sdk
2、首先你的机器上必须有DirectX 或者 OpenGL 这样一个图形处理的SDK:
看一下整个操作:
a、安装并配置DirectX SDK(官方建议的版本是DirectX SDK - February 2010。不同版本的DXSDK可能会造成OGRE编译失败,这个要注意。)
1、把DirectX SDK里的include文件夹添加进包含文件中
2、把DirectX SDK里的Lib\x86文件夹添加进库文件中
3、把DirectX SDK里的Utilities\Bin\x86添加进可执行文件中
这三步是在vs2008中使用的时候要配置的,如果单单只是要cmake编译OGRE的源代码的话,不需要配置的,只要装一下DirectX SDK (February 2010)就行了,cmake中Configure的时候,会自动找到里面的include和lib文件的。。
b 、安装并配置OGRE SDK 1.7
1、把OgreSDK_vc9_v1-7-2\include\OGRE添加进包含文件中
2、把OgreSDK_vc9_v1-7-2\boost_1_44添加进包含文件中(注意:由于ORGE中使用了boost不 添加这个的话就会提示少tss.hpp)
3、把OgreSDK_vc9_v1-7-2\lib\debug添加进库文件中 //这个和以往的不同
4、把OgreSDK_vc9_v1-7-2\boost_1_44\lib添加进库文件中
然后整个编译一边OGRE.sln的这个解决方案:
最后你想看里面的例子的话,就得打开SampleBrower的那个工程:调试-》开始执行(不调试)。
通过上面可以看到,SDK是很方便、很简单的,不过我使用的是用OGRE的源代码进行编译的,如下面所述的方法。
二、 通过源代码编译:
首先你得准备三样东西:
1、OGRE的源码:想编译OGRE,最起码要有OGRE的源码吧。可以去官方网站下载最新的源码包,我这里用的是1.7.2版本的,下载下来的文件叫 ogre_src_v1-7-2.exe。运行下载下来的程序,解压源码到一个目录下备用(我的目录为:E:\ogre_src_v1-7-2)。
2、下载并安装DirectX SDK,官方建议的版本是DirectX SDK - February 2010。不同版本的DXSDK可能会造成OGRE编译失败,这个要注意。
3、下载依赖包,OGRE的依赖包可以在Visual Studio Dependencies上下载到。将下载的依赖包解压到OGRE源码所在目录下,保持默认文件夹名称“Dependencies”就好。解压好的依赖包位置如下图。
4、进入刚才解压出来的依赖包Dependencies的目录下的src文件夹,打开OgreDependencies.VS2008.sln,Debug和Release各编译一次。
5、安装Boost库,这个非必须,但是建议安装上去,以提高性能和开启后台加载等一些功能。
建议的Boost库版本为1.44.0,Windows用户可以通过下载Boostpro Boost Installers安装(我下载的是:boost_1_44_setup.exe ),安装时确保选中了"Multithreaded"和"Multithreaded Debug",选择库的时候,要选上Boost Date Time 和 Boost Thread。
6、.下载并安装cmake,官方网站是:http://www.cmake.org/。(我下载的是cmake-2.8.5-win32-x86.exe)
至此,编译前的准备工作全部完成,下面进入OGRE的编译环节。
点击cmake界面左下角的Configure按钮,从图中可以看出,程序会自动找到Boost的安装路径,并把include和lib路径包含进来。
从上图中可以看出,程序会自动找到下载到的依赖包Dependencies中的include和lib。
从上图中可以看出,程序会自动找到DirectX SDK (February 2010)中的include和lib。
从上图中可以看出,程序会自动找到依赖包中OIS的include和lib。
第一次配置需要选择编译器,我们选择vs2008 32bit。
7、待第一遍配置完成后,可以看到配置选项都是红色,这时,再次点击Configure按钮,执行完成后选项变为灰色。(这一步的作用是使用OGRE默认配置来配置编译环境)
8、配置完成之后,点击Configure按钮右侧的Generate按钮生成项目。
9、执行完成后,cmake会将项目生成到之前配置的"Where to build the binaries"路径下。
10、打开"Where to build the binaries"路径,会发现cmake已经为我们生成了整个OGRE工程,打开OGRE.sln,编译即可。
附加:第7步中的:再次点击Configure按钮,执行完成后选项变为灰色,说明配置成功了,配置成功的提示如下:
Check for working C compiler using: Visual Studio 9 2008
Check for working C compiler using: Visual Studio 9 2008 -- works
Detecting C compiler ABI info
Detecting C compiler ABI info - done
Check for working CXX compiler using: Visual Studio 9 2008
Check for working CXX compiler using: Visual Studio 9 2008 -- works
Detecting CXX compiler ABI info
Detecting CXX compiler ABI info - done
Configuring OGRE 1.7.2
Check size of void*
Check size of void* - done
Search path: E:/ogre_src_v1-7-2/build/Dependencies;E:/ogre_src_v1-7-2/Dependencies;E:/ogre_src_v1-7-2/build/../Dependencies;E:/ogre_src_v1-7-2/../Dependencies
Looking for ZLIB...
Found ZLIB: optimized;E:/ogre_src_v1-7-2/Dependencies/lib/release/zlib.lib;debug;E:/ogre_src_v1-7-2/Dependencies/lib/debug/zlibd.lib
Looking for ZZip...
Found ZZip: optimized;E:/ogre_src_v1-7-2/Dependencies/lib/release/zziplib.lib;debug;E:/ogre_src_v1-7-2/Dependencies/lib/debug/zziplibd.lib
Looking for FreeImage...
Found FreeImage: optimized;E:/ogre_src_v1-7-2/Dependencies/lib/release/FreeImage.lib;debug;E:/ogre_src_v1-7-2/Dependencies/lib/debug/FreeImaged.lib
Looking for FREETYPE...
CMAKE_PREFIX_PATH: E:/ogre_src_v1-7-2/build/Dependencies;E:/ogre_src_v1-7-2/Dependencies;E:/ogre_src_v1-7-2/build/../Dependencies;E:/ogre_src_v1-7-2/../Dependencies
Found FREETYPE: optimized;E:/ogre_src_v1-7-2/Dependencies/lib/release/freetype2311.lib;debug;E:/ogre_src_v1-7-2/Dependencies/lib/debug/freetype2311_D.lib
Found OpenGL: opengl32
Looking for DirectX...
DirectX_PREFIX_PATH changed.
Found DirectX: C:/Program Files/Microsoft DirectX SDK (February 2010)/Lib/x86/d3d9.lib
DX lib dir: C:/Program Files/Microsoft DirectX SDK (February 2010)/Lib/x86
DX lib dir: C:/Program Files/Microsoft DirectX SDK (February 2010)/Lib/x86
Looking for Cg...
Cg_PREFIX_PATH changed.
Found Cg: optimized;E:/ogre_src_v1-7-2/Dependencies/lib/release/cg.lib;debug;E:/ogre_src_v1-7-2/Dependencies/lib/debug/cg.lib
Looking for POCO...
Could not locate POCO
Looking for TBB...
Could not locate TBB
Looking for OIS...
OIS_PREFIX_PATH changed.
Found OIS: optimized;E:/ogre_src_v1-7-2/Dependencies/lib/release/OIS.lib;debug;E:/ogre_src_v1-7-2/Dependencies/lib/debug/OIS_d.lib
Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)
Looking for CppUnit...
Could not locate CppUnit
-----------------------------------------------------------------------------
-- The following external packages were located on your system.
-- This installation will have the extra features provided by these packages.
+ zlib
+ zziplib
+ freeimage
+ freetype
+ OpenGL
+ OpenGL ES
+ DirectX
+ cg
+ boost
+ boost-thread
+ boost-date_time
+ OIS
-----------------------------------------------------------------------------
-- The following OPTIONAL packages could NOT be located on your system.
-- Consider installing them to enable more features from this software.
+ POCO: POCO framework <http://pocoproject.org/>
+ tbb: Threading Building Blocks <http://www.threadingbuildingblocks.org/>
+ Doxygen: Tool for building API documentation <http://doxygen.org>
+ CppUnit: Library for performing unit tests <http://cppunit.sourceforge.net>
-----------------------------------------------------------------------------
----------------------------------------------------------------------------
FEATURE SUMMARY
----------------------------------------------------------------------------
Building components:
+ Paging
+ Property
+ Terrain
+ RTShader System
+ RTShader System Core Shaders
+ RTShader System Extensions Shaders
Building plugins:
+ BSP scene manager
+ Cg program manager
+ Octree scene manager
+ Portal connected zone scene manager
+ Particle FX
Building rendersystems:
+ Direct3D 9
+ OpenGL
Building executables:
+ Samples
+ Tools
Building core features:
+ DDS image codec
+ FreeImage codec
+ ZIP archives
Build type: dynamic
Threading support: background (boost)
Use double precision: disabled
Allocator type: nedmalloc (pooling)
STL containers use allocator: enabled
Strings use allocator: disabled
Memory tracker (debug): disabled
Memory tracker (release): disabled
Use new script compilers: enabled
Use Boost: enabled
----------------------------------------------------------------------------
Configuring done
OGRE 1.7.2 [Cthugha] 编译配置全过程方法相关推荐
- Ogitor的编译配置全过程
上一篇文章中已经使用cmake配置好OGRE了,配置完成之后,点击Configure按钮右侧的Generate按钮就能生成解决方案了.. 接下来你就可以到刚才建立的build文件夹虾找到刚刚生成的解决 ...
- OGRE 1.7.2 [Cthugha] 编译方法
本文原创版权归 博客园 张家瑞 所有,如有转载,请于显示位置详细标明原创作者及出处,以示尊重! 作者:张家瑞 原文:http://www.cnblogs.com/leiben/archive/2011 ...
- RHEL5(CentOS)下nginx+php+mysql+tomcat+memchached配置全过程(转)
RHEL5(CentOS)下nginx+php+mysql+tomcat+memchached配置全过程 一.准备工作:SSH,telnet终端中文显示乱码解决办法vi /etc/sysconfig/ ...
- Debian 编译内核全过程[转]
Debian 编译内核全过程1.安装内核编译工具 基本工具有:gcc,libc5-dev或libc6-dev,binutils,make,bin86,modutils,mawk或gawk,gzip,s ...
- 修改linux系统iqn,linux iSCSI target配置全过程
linux iSCSI target配置全过程 linux iSCSI target配置全过程 一:Install iSCSI target for Linux 1,操作系统: [root@rac2 ...
- ROS-Melodic 编译Moveit全过程记录和错误解决方案
ROS-Melodic 编译Moveit全过程记录和错误解决方案 在Ros Melodic版本下,直接运行sudo apt-get install ros-melodic-moveit会出现以下错误: ...
- linux下boost编译安装全过程脚本塈bzip2编译安装全过程脚本
boost编译安装 build_boost.sh #!/bin/bash shell_folder=$(cd "$(dirname "$0")";pwd) pu ...
- Ubuntu 环境配置全过程
Ubuntu 环境配置全过程 1 .卸载相关无用软件 https://www.jianshu.com/p/67a86505279f 1 更换系统源 2 卸载LibreOffice sudo apt-g ...
- oneinstack更换php版本,oneinstack一键包Nginx php多版本共存配置全过程
oneinstack一键包地址:http://oneinstack.com/install/ 非常好用的一键包.下面说说基于oneinstack一键包的 Nginx php多版本共存配置全过程 第一步 ...
最新文章
- python解压zip文件_Python中最快解压zip文件的方法
- 浙江大学计算机科学与技术学院工业设计工程,浙江大学考研·2020年工业设计考研信息整理...
- c语言开发游戏趋势,都9012年了,为何我还坚持用C语言开发游戏
- Android 开发 技术大纲 某学课堂
- 已修复的bug: 简书文章长标题换行异常,标题配图异常,首页配图异常
- 创建分布式爬虫的步骤
- Advanced Auto Layout
- k8s节点加入master节点时超时:Initial timeout of 40s passed
- hackthon java_Hackathon 参赛指南——如何愉快地参加一场 Hackathon
- 字节跳动变更集团LOGO 此前已正式更名为抖音集团
- rrpp协议如何修改_RRPP 演示实例
- 一文看尽 6篇 CVPR2021 伪装目标检测、旋转目标检测论文
- 【微电网优化】基于粒子群算法求解热电联供型微电网经济运行优化问题含Matlab源码
- CentOS 7中yum安装java
- dede列表上一页下一页翻页记录重复问题解决
- 合伙开公司要如何规避风险
- 人月、人年的计算公式
- 一文了解如何使用移动应用安全组件Soot和Flowdroid
- 程序猿有话说:计算机,学着挺有意思的,就是头冷
- ARM汇编指令EQU与等号“=”的异同
热门文章
- Applese 的回文串(加一个字符的回文)
- 1396: 队列问题(2)
- AI圈内卷?天池团聚请来专家集体“问诊”
- 联邦家私:用宜搭一周上线售后管理系统,打通信息孤岛,提升协同效率
- 阿里云容器网络文件系统 CNFS 1.0 发布,体验云原生时代的容器共享存储
- 如何一站式解决“人财物事”管理难题?
- 云原生时代,微服务如何演进?
- 5G与WiFi 6之争,对物联网意味着什么
- 执行python时,ImportError: No module named xxx的解决方法
- 我的Go+语言初体验——go【Format】goplus