OGRE 2.1 Windows 编译

环境:
  Windows 7 64Bit
  Visual Studio 2012
  OGRE 2.1
  CMake 2.8.12.1

OGRE:
  OGRE官方推出了最新的OGRE2.1版本,链接地址:
    https://bitbucket.org/sinbad/ogre/downloads
  新版本的OGRE做出了大量的修改,从官方给出的文档我们可以看出作者们对OGRE进行了优化与完善。从上面链接中下载的官方版本并没有包含编译需要的依赖项(一向都这样),所以我们需要下载OGRE的依赖。

OGRE Dependencies : ogredeps
  ogredeps工程可以在一下的链接地址下载到:
    https://bitbucket.org/cabalistic/ogredeps/downloads
  这些开源项目因为许可等种种原因搞的非常麻烦,在这个下载项中有没有SDL,所以我们还得另外下载SDL。

SDL:
  在上述链接地址的“Source”页面中,列举出了依赖项源代码的目录树,打开“src”文件夹会看到“SDL2”的链接,然后打开这个链接后,我们就会在新的页面找到SDL2的下载地址(其实也很难找),如下图所示。

  将解压后的“./SDL-c3c3cdaf37f9”中的所有文件拷贝到ogredeps解压后的“./src/SDL2”文件夹中。

ogredeps 编译:
  现在可以编译OGRE的依赖了,首先需要使用CMake生成工程项目,在CMake的“Where is the source code:”输入源代码位置,像这样:“...\cabalistic-ogredeps-eb18d4651ec7”,在“Where to build the binaries:”中输入输出位置,像这样:“...\cabalistic-ogredeps-eb18d4651ec7\output”(output文件夹自己新建,可随意指定),然后点击“Configure”,选择编译器版本(如:Visual Studio 11.0),配置成功后CMake输出文本框会显示“Configuring done”,最后点击“Generate”生成vs工程项目,生成成功后会显示“Generating done”。如下图所示。

  上述操作步骤成功后就可以进入“...\output”文件夹,用vs2012打开.sln项目的,然后选择“ALL_BUILD”工程项目,进行“全部重新编译”,编译成功后选择“INSTALL”工程项目进行“重新编译”,编译成功后会在“...\output”文件夹中生成“ogredeps”文件夹,该文件夹中包含了所有OGRE编译所需要的所有依赖项目。

OGRE 编译:
  编译步骤同上面编译ogredeps步骤相似(需要提前安装Direct X),只不过需要将上面“ogredeps”文件夹拷贝到解压后的文件夹“...\sinbad-ogre-51e90cec4c17”中
(这里我在生成工程项目的时候,CMake总是在一个叫“...\Dependencies”的文件中寻找依赖项,而不在ogredeps中寻找,可能是我的CMake配置有关系,最后没有办法我只能将刚才拷贝过来的“ogredeps”文件夹改名为“Dependencies”,如果知道原因的同学,可以在评论中指点),如下图所示。

  当“Configure”和 “Generate”成功后,就可以在“...\output”中着调.sln工程项目,打开工程后还是依次编译“ALL_BUILD”和
“INSTALL”两个工程,编译成功后就将工程“SampleBrowser”设置为“启动项”,运行就可以看到OGRE官方例子。

问题:

  由于我没有安装Direct3D11,所以运行出现如下错误:

  只需要将“...\Output\bin\debug”文件夹中配置文件plugins_d.cfg中的“Plugin=RenderSystem_Direct3D11_d”用“#”注释掉即可。
最终运行结果如下如所示。

【转载】OGRE 2.1 Windows 编译的更多相关文章

  1. OGRE 2.1 Windows 编译

    版权所有,转载请注明链接 OGRE 2.1 Windows 编译 环境: Windows 7 64Bit Visual Studio 2012 OGRE 2.1 CMake 2.8.12.1 OGRE ...

  2. Windows编译ejabberd

    Windows编译ejabberd(金庆的专栏)安装 erlang OTP. 添加路径到 PATH, 使 erl 可以运行.git clone ejabberd安装 rebar:git clone g ...

  3. CEF3.2623使用记录:windows编译

    CEF3.2623使用记录:windows编译 1:cef3.2623下载地址 2623是cef3最后一个支持xp系统的版本,且可以支持html的audio标签,可以用作对html音频的处理下载地址为 ...

  4. 转载请注明:Windows 系统必备好用软件&工具合集跟推荐 | 老D博客

    Windows 系统必备好用软件&工具合集跟推荐 97 63,371 A+ 所属分类:工具软件 一.浏览器 二.下载软件 三.播放软件 五.电子邮件客户端 六.图片/照片 浏览查看工具 七.文 ...

  5. Windows 编译安装 nginx 服务器 + rtmp 模块

    有关博客: <Windows 编译安装 nginx 服务器 + rtmp 模块>.<Ubuntu 编译安装 nginx>.<Arm-Linux 移植 Nginx> ...

  6. php beast windows编译教程

    git clone https://github.com/Microsoft/php-sdk-binary-tools.git c:\php-sdk cd c:\php-sdk git checkou ...

  7. 专题:Windows编译x264、SDL、faac、ffmpeg过程

    Windows上编译ffmpeg完整过程,包括编译x264.SDL.faac.在Windows上编译ffmpeg需要用MinGW+msys,本专题用于记录编译过程中遇到的各种问题及解决方法,转载请注明 ...

  8. 【转载】LINUX 和 WINDOWS 内核的区别

    LINUX 和 WINDOWS 内核的区别 [声明:欢迎转载,转载请注明出自CU ACCESSORY http://linux.chinaunix.net/bbs/thread-1153868-1-1 ...

  9. Windows编译PHP7.2拓展

    转载请注明文章出处:https://tlanyan.me/windows-co... 准备工作 https://github.com/Microsoft/...下载PHP-SDK(在右边的" ...

随机推荐

  1. Django中模型(三)

    Django中模型(三) 四.模型成员 1.类属性 objects:是Manager类的一个对象,作用是与数据库进行交互. 定义模型类时,没有定义管理器,则默认创建名为objects的管理器. 2.自 ...

  2. 5、Android-跨程序共享数据--内容提供器

    Android数据持久化技术:文件存储.SharedPreferences存储.数据库存储 使用这些持久化技术保存的数据只能再当前的应用程序中访问 但是对于不同应用之间的可以实现跨程序数据共享的功能 ...

  3. MAC 下 安装redis 并配置 php redis 扩展

    下载 redis redis-3.1.2.tgz sudo tar -xzf redis-3.1.2.tgz cd redis-3.1.2 sudo phpize grep: /usr/include ...

  4. ArcSDE 数据迁移 Exception from HRESULT: 0x80041538问题及解决方案

    一.问题描述 1.采用gdb模板文件,在ArcSDE(数据服务器)中批量创建数据库表(数据迁移)时,用到接口ESRI.ArcGIS.Geodatabase.IGeoDBDataTransfer的方法T ...

  5. Spring中使用属性文件properties的两种方式

    实际项目中,通常将可配置的参数放到属性文件中,例如数据库连接信息.redis连接信息等,便于统一管理.然后通过IoC框架spring将其加载到上下文中,使得程序可以直接使用. 创建mysql.prop ...

  6. App测试需要测什么

    App,做为当下最热的手机安装软件,无论是产品本身的设计还是性能,易用性等都是非常受考验.一个app能在用户的手机上使用,并作为一个长期用户是非常不容易的.那么,App的测试中我们到底要测试什么呢? ...

  7. uboot 移植 要点

    1.第一 首先要  学会 shell 语法   比如 变量的 概念 变量的使用 ,if 语法  ,以及简单 IF 语法(与 或预算),以及  while for 循环 等等语法,才能看得懂 uboot ...

  8. EF Core 中DbContext不会跟踪聚合方法和Join方法返回的结果,及FromSql方法使用讲解

    EF Core中: 如果调用Queryable.Count等聚合方法,不会导致DbContext跟踪(track)任何实体. 此外调用Queryable.Join方法返回的匿名类型也不会被DbCont ...

  9. 为什么我们要做三份 Webpack 配置文件

    时至今日,Webpack 已经成为前端工程必备的基础工具之一,不仅被广泛用于前端工程发布前的打包,还在开发中担当本地前端资源服务器(assets server).模块热更新(hot module re ...

  10. Java中的集合和常用类

    Java中的常用类: ▪ Object类 ▪ Math类 ▪ String类和StringBuffer类(字符串) ▪ 8种基本类型所对应的包装类 ▪ java.util包中的类——Date类 Obj ...