iOS OpenGL ES 与 Android OpenGL ES 兼容吗?

Posted

技术标签:

【中文标题】iOS OpenGL ES 与 Android OpenGL ES 兼容吗?【英文标题】:iOS OpenGL ES compatible with Android OpenGL ES? 【发布时间】:2011-04-20 09:56:50 【问题描述】:

理论上,我可以在 openGL ES 中为 ios 编写游戏并期望轻松地将其移植到 android 上吗?从 Android 到 iOS 怎么样?

【问题讨论】:

移植比两个不同的 API 更容易,但 OpenGL 本身并不能保证不同硬件的相同结果。大多数相似,但无论如何,不​​能保证。所以你仍然需要测试所有的渲染代码输出。 【参考方案1】:

您需要考虑 Android 和 iOS 游戏开发的差异:

在android中你需要支持多个图形芯片

不同的纹理压缩支持 性能上的主要差异

不同的 OpenGL ES 实现

Android中的gluUnproject实现有bug(比如有custom implementations) Android 中缺少 glGet* 函数(不过你可以使用MatrixTrackingGL)

【讨论】:

【参考方案2】:

是的,我相信如果您使用 C/C++ 为 iOS 编写游戏,将其移植到 Android 不会太麻烦。但是,如果你用 Objective-C 编写游戏,那确实会很麻烦。

【讨论】:

这确实不能解决手头的问题,也不应该是公认的答案!

以上是关于iOS OpenGL ES 与 Android OpenGL ES 兼容吗?的主要内容,如果未能解决你的问题,请参考以下文章

使用 OpenGL ES 2.0 和 cmake 生成 iOS 静态库

IOS – OpenGL ES 图像漩涡 GPUImageSwirlFilter

IOS OpenGL ES GPUImage GPUImageWeakPixelInclusionFilter

IOS – OpenGL ES 图像漩涡 GPUImageSwirlFilter

IOS – OpenGL ES 图像漩涡 GPUImageSwirlFilter

IOS – OpenGL ES 调节图像色度 GPUImageHueFilter