gpt4 book ai didi

iphone - 当涉及高度动画的用户界面时,openGL ES 是否比 Core Animation 和 UIKit 具有更好的性能?

转载 作者:行者123 更新时间:2023-12-03 18:38:32 24 4
gpt4 key购买 nike

目前,我的用户界面大量使用了核心动画。我想知道是否值得再花两个月的时间来学习openGL ES?这真的能提高 2D 表面的绘图性能吗?我没有 3D 对象,而是高度动画的 2D 对象。有时会出现 3D 扭曲、大量旋转和缩放。

特别是,我仅使用 CA 制作了一个包含大量 Sprite 的完整游戏。性能还可以,但并不完美。

最佳答案

理论上 OpenGL 应该是设备上最快的 API,因为它最接近硬件。 (如果我在这一点上错了,请有人纠正我。)在 OpenGL 中,你可以做一些巧妙的技巧,这将对你的性能有很大帮助 - 你可以批量绘制 Sprite ,你可以使用点 Sprite ,你可以尝试压缩纹理等

另一方面,您非常接近硬件,并且没有太多抽象,至少与核心动画相比是这样。你必须处理非二次幂的纹理、投影、矩阵,你必须自己编写动画代码等等。有很多地方你可能会出错并严重影响性能而不是使其变得更好。

我喜欢 OpenGL 的一点是它是跨平台的。关于OpenGL的资源有很多,还有很大的改进空间。如果您想编写游戏并且有时间学习 OpenGL,那就去做吧。将 OpenGL 基础知识包装到 OOP 设计中并不难,最终您将获得更多的性能改进空间。一个好的起点是 Cocos 2D engine for iPhone .

<小时/>

(免责声明:我对 OpenGL 知之甚少,对核心动画一无所知。我使用 OpenGL 为 iPhone 编写了两款 2D 游戏。)

关于iphone - 当涉及高度动画的用户界面时,openGL ES 是否比 Core Animation 和 UIKit 具有更好的性能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1136550/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com