iOS平台编译Ogre游戏引擎库

Published 2025-03-24 21:40 753 words 4 min read

前端项目通过bridge获取客户端资源,客户端直接返回response对象常用代码模板1——基础算法常用代码模板2——数据结构统计iOS工程代码行数高数概念、公式、定理Objective-C 语法 3Objective-C 语法 2Objective-C 语法 1UIViewController 的生命周期UITableview调用reload方法时抖动问题UILabel中文带行间距的处理,限制行数,计算高度等UIButton扩大点击范围以及关于响应者链条的思考UIApplicationSwiftUI基本控件iPhone6 Plus上面神秘的缝隙iPhone 刘海机型UI适配(X、Xs、Xs Max、Xr)iOS:如何在UITableView调用reloadData刷新结束后再同步执行后续操作iOS 截取整个 scrollview 图片iOS 关于 UITextField 的字数限制Objective-C 中禁止调用指定的方法objc源码分析-runtime-classObjective-C Type EncodingsObjective-C:为什么分类中不能直接添加属性OC优缺点以及常见bugruntime——运行时简单使用当对象接收到不能处理的消息时调用的方法浅谈iOS中的weak为 UIControl 实现线程安全的 Block 事件扩展:原理与实践OC单例宏iOS常用数据类型转换OC中nil 、NULL、 Nil 、NSNull的区别Description方法和NSLog函数Block in Objective-CiOS自动化埋点的实现iOS平台编译Ogre游戏引擎库iOS:特殊符号大全iOS 网络小结iOS 沙盒与 BundleiOS 框架学习-AsyncSocketNSString的各种处理Swift Module 如何被全局引用CocoaPods组件化——OC/Swift动静态库混用COCOAPODS技巧-创建私有仓库关于NSNotificationCenter数据结构与算法解析习题2.23数据结构与算法解析习题2.19数据结构与算法解析习题2.16数据结构与算法解析习题2.14数据结构与算法解析习题2.13数据结构与算法解析习题2.12数据结构与算法解析习题2.11:二分查找数据结构与算法解析习题2.10:霍纳法则(Horner's rule)数据结构与算法解析习题2.7数据结构与算法解析习题1.3数据结构与算法解析习题1.2数据结构与算法解析习题1.1LeetCode 486 Predict the Winner(预测赢家)LeetCode 398 随机数索引LeetCode 106 Construct Binary Tree from Inorder and Postorder Traversal(由中序和后序遍历建立二叉树)LeetCode 70 爬楼梯(青蛙跳台阶)LeetCode 8 String to Integer (atoi)LeetCode 6 ZigZag Conversion(Z字转换)LeetCode 5 Longest Palindromic Substring(最长回文字串)iOS脚本打包 ipa(.app转.ipa)《什么是数学 》习题 第一章 补充《什么是数学 》习题 第一章 2 数系的无限性 数学归纳法《什么是数学 》习题 第一章 1 整数的计算Vue 的一些指令和缩写
This post is not yet available in English. Showing the original.
Ogre 是个老牌的游戏引擎了,前段时间有点需求需要改里面源码,所以研究了一下如何编译,没想到坑有点深,爬完赶紧过来记录一下,省得再陷进去。。 准备阶段 需要下载 Ogre源码和 Ogre 依赖的一些库,先把这些依赖的库编好放在 iOSDependencies 文件夹中,头文件放在 include

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

准备阶段

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

安装 cmake 工具。

然后就开始编 Ogre了。

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

OGRE1.10.11 iOS 源码 Build

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

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

mkdir build
cd build

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

# 参数中需要改动有两点
# 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 工程。

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

© 2024 - 2026 cos @cosine
Powered by theme astro-koharu · Inspired by Shoka