目录

iOS平台编译Ogre游戏引擎库

Ogre 是个老牌的游戏引擎了,前段时间有点需求需要改里面源码,所以研究了一下如何编译,没想到坑有点深,爬完赶紧过来记录一下,省得再陷进去。。

准备阶段

需要下载 Ogre源码Ogre 依赖的一些库,先把这些依赖的库编好放在 iOSDependencies 文件夹中,头文件放在 include 文件夹中,库放进 lib 文件夹中。

安装 cmake 工具。

然后就开始编 Ogre了。

其实编译这些依赖库的时候也遇到了一些坑,不过我的大脑保护机制选择删除了这段记忆,实在想不起来了,不过网上好像有直接编译好的包,所以如果实在编译不成功可以网上找找或者联系我。

OGRE1.10.11 iOS 源码 Build

第一步,把 iOSDependencies 文件夹拷贝到 Ogre 源码的根目录。

第二步,创建 build 文件夹,然后 cd 进 build。

1
2
mkdir build
cd build

第三步,设置 cmake 相关参数并生成 Xcode 工程,注意命令最后的两个点不要丢掉,那是路径设置。

1
2
3
4
5
# 参数中需要改动有两点
# DIOS_PLATFORM              编译真机还是模拟器(OS或者SIMULATOR)
# DOGRE_DEPENDENCIES_DIR     ogre依赖库的路径,要写成绝对路径,不要问我为什么。。

cmake -DOGRE_BUILD_PLATFORM_APPLE_IOS:BOOL=TRUE -DIOS_PLATFORM=SIMULATOR -DCMAKE_TOOLCHAIN_FILE=CMake/toolchain/ios.toolchain.xcode.cmake -DAPPLE_IOS:BOOL=TRUE -DOGRE_DEPENDENCIES_DIR="/Users/ankang/Documents/Git/OGRE/ogre1.10.11/iOSDependencies" -G Xcode ..

最后一步,编译生成的 Xcode 工程。

1
cmake --build .

如果编译完成的就是 iOS 平台的 ogre 的库了。。


下面是当初 Ogre 1.9 的爬坑之旅,只是记录,如果不需要编老版本库的话,就不要看了,看了心烦。。


OGRE1.9 iOS 源码 Build

下载源码 需要下载两套源码:

  1. OGRE源码
  2. ogredeps

添加 iOS 依赖库

  1. 在 ogre 根目录创建目录: iOSDependencies ,然后放着先别管他。
  2. 进入下载的 ogredeps 源码根目录。
  3. 用 cmake 构建一个 ogredeps 的 xcode 工程,方法同上。
  4. 打开 ogredeps 工程,选择 install target,编译一下。
  5. 编译完成后,在工程目录下,有个 ogredeps 目录,拷贝目录里面的 inclued 和 lib 两个文件夹,粘贴到 iOSDependencies 之中。(debug 和 release 的真机和模拟器都要弄)

通过 CMAKE build iOS工程

  1. 下载 cmake APP 打开。
  2. 在 source code 处,选择 ogre 根目录。
  3. 在 build 处,选择需要 build 出来的工程的地方。
  4. 点击 Add Entry,Name : OGRE_BUILD_PLATFORM_APPLE_IOS , Type : BOOL, value : 打对勾。然后点击OK
  5. 点击 Configure,等等配置结束,再次点击 Configure。再次等待。然后点击Generate。等待一段时间,工程已经构建完成。但是这时候是跑不起来工程的。还需要添加一下 iOS 依赖库。

跑 OGRE SDK 编译脚本 (可省略 (通过 CMAKE build iOS工程) 步骤)

  1. 进入 ogre/SDK/iOS 目录。
  2. 执行 make_ios.sh 脚本,坐等一个小时左右。
  3. 在此目录下会生成 build 文件夹。里面就是 iOS 工程。
  4. 完事,跑工程即可。

参考:https://github.com/aphcoder/ogre-ios-helloworld