泰坦失足 发表于 2026-7-6 14:06

iOS上RTS游戏生态只能靠AI了吗, Fable模型将C&C将军移植到了iOS/iPad上

本帖最后由 泰坦失足 于 2026-7-6 14:11 编辑

https://github.com/ammaarreshi/Generals-Mac-iOS-iPad/tree/main
"“移植”这个词不足以形容这段旅程有多么曲折离奇,所以这里我来详细说说它的真实情况。以下是它的基础:EA 的源代码发布、社区的现代化改造、Fighter19 最初的 Unix 移植版、GeneralsX 的 macOS/Linux 版本。然而,iOS 上却完全 没有这些——而 iOS 对一款 2003 年的 Windows RTS 游戏来说,简直是个不友好的环境:
引擎假定其运行所在的文件系统是可写的。iOS 应用则运行在一个只读的、经过代码签名的包中。所有配置写入、缓存和保存路径都必须重新路由——并且工作目录必须从包本身引导创建。
渲染器支持 DirectX 8,iPad 支持 Metal。 两者之间存在着多种兼容性问题:DXVK 将 D3D8 转换为 Vulkan,MoltenVK 将 Vulkan 转换为 Metal——而 DXVK 从未针对 iPhoneOS 进行过编译。这需要使用 Meson 进行交叉编译,并对其 Vulkan 加载器进行补丁,因为 iOS 将 dlopen 限制在应用程序包内( Patches/dxvk-ios.patch )。
iOS 会接管你的进程。 打开应用切换器,操作系统会 在不将你置于后台的情况下接管 Metal 可绘制对象——再画一帧,恢复后就彻底崩溃了。整个渲染/模拟循环都学会了屏住呼吸。
RTS 游戏需要鼠标。SDL3 (源自以下版本)提供原始触摸事件;其上的 RTS 语义是新的。点击操作会延迟到 2003 版 GUI 处理完悬停事件后才会生效(否则菜单按钮永远不会高亮显示),拖拽操作必须决定是选择框还是平移视角,长按变成了右键单击,取消的触摸操作绝不能误触集结点。
接下来是漏洞排查 ——这才是最精彩的部分。比如,小地图会显示成黑色,因为 2003 年的纹理格式回退机制悄无声息地丢弃了 alpha 通道。还有 EVA 语音会随机静音,因为某个僵尸音频流设置了一个全局的“禁止语音覆盖”标志,却一直发出啁啾声。所有这些漏洞我们都在真机上找到了根本原因,修复后提交给了上游。"

长时间在 iPad 上运行应用可能会导致 iOS 系统因内存不足(占用内存超过 3 GB)而强制终止应用;应用会直接退出到主屏幕,不会弹出任何对话框。会话日志(当前会话和之前的会话)位于“文件”应用的游戏文件夹下。目前正在调查中。
在 iOS 系统上,游戏过程中切换到后台运行偶尔会导致崩溃——生命周期暂停可以解决常见问题;但仍存在极少数的崩溃原因。请经常保存游戏。



EA开源版->社区移植版->mac版->这次AI移植的iOS/iPad版

ybfelix 发表于 2026-7-6 14:25

我觉得触屏玩这类游戏比较难受的还是无法区分左击右击,由于右击操作非常多,用长按模拟非常拖沓,而且往往触发长按的时长阈值还设得很长。另外,手腕悬空去点击一会儿就累了,人体工学还不如虚拟摇杆舒服

泰坦失足 发表于 2026-7-6 14:32

本帖最后由 泰坦失足 于 2026-7-6 14:39 编辑

ybfelix 发表于 2026-7-6 14:25
我觉得触屏玩这类游戏比较难受的还是无法区分左击右击,由于右击操作非常多,用长按模拟非常拖沓,而且往往 ...


2009年的红警iOS版的UI长这样, 操作就还行吧. 图个乐呵. 3.5英寸的手机屏幕上面玩, 也算凑合. 一定要便携设备上玩的话, NS掌机玩皮克敏, 手感还行. Chronodivide的web版红警有个国内改进版, 多出了一些为触屏设计的虚拟按键和功能, 然后拿iPad+笔试了下. 还是放弃了. 大概我是想要不是随时随地玩红警, 而是在那种不能用PC却能偷偷玩到游戏的感觉

pf67 发表于 2026-7-6 15:26

不是只能靠AI,是还可以靠AI

zzy516232108 发表于 2026-7-6 15:45

泰坦失足 发表于 2026-7-6 14:32
2009年的红警iOS版的UI长这样, 操作就还行吧. 图个乐呵. 3.5英寸的手机屏幕上面玩, 也算凑合. 一定要便 ...

这个我在越狱IOS上还下了 太难受了而且玩着玩着就卡死……
页: [1]
查看完整版本: iOS上RTS游戏生态只能靠AI了吗, Fable模型将C&C将军移植到了iOS/iPad上