几个月来我一直在开发 iPhone 应用程序。我想知道您对 Quartz 与 OpenGL ES 1.x 或 2.0 学习曲线的看法。你可以说出你的观点。我的问题是
*我是一个想要成为游戏开发者的人,所以首先在石英中开发,然后转向
OpenGL ES 是个好主意还是没有什么不同 *当你有类似的问题时,你能告诉你的经验吗?
谢谢 :)
几个月来我一直在开发 iPhone 应用程序。我想知道您对 Quartz 与 OpenGL ES 1.x 或 2.0 学习曲线的看法。你可以说出你的观点。我的问题是
*我是一个想要成为游戏开发者的人,所以首先在石英中开发,然后转向
OpenGL ES 是个好主意还是没有什么不同 *当你有类似的问题时,你能告诉你的经验吗?
谢谢 :)
Quartz 2D 不适用于游戏开发恕我直言。它是一个软件渲染API。它不会给你实时渲染速度。它适用于绘制带有阴影的图表或矢量文本,或者将多个图像混合在一起。只是不适合游戏。除非你想制作一个很少有图像在单色背景下移动的游戏,即使在这种情况下,我怀疑它在旧设备上是否真的很流畅。我见过一些明显用 Quartz 编码的游戏。可怜的景象。
迟早你会使用 Open GL ES 或基于它构建的游戏框架。我建议您查看 cocos2D、SIO2 引擎或 SDK 中的示例。通过仔细编程,即使在第二代设备上,也可以制作具有视差滚动和相对少量对象的 Open GL ES 游戏以 60 FPS 的速度运行。Tiny Wings 就是这种游戏的一个例子。并且保持稳定的 30 FPS 根本不是问题。
我跳过了 Quartz,直接进入了 OpenGL ES。我从一个基于 2D 精灵的游戏开始。认为这很容易。
关键是有一个很好的例子可以看。我使用了月球着陆器克隆(Crash Lander),但我认为这不再容易找到了。也许最近做过的人知道使用当前最佳实践的更好、更新的示例。
尽管我没有编程背景,但我与您描述的情况相同。(虽然我也不知道你的背景是什么) 目前,我正在学习编码,因为我学习了各种可用的 API。我是一个 Objective-c 的人,要回溯到基于 c 的 Quartz API,这有点挑战。幸运的是,S. Kochan 的 Objective-C 2.0 中的编程有一章很好地介绍了底层 C 特性,可以让你继续前进。
我已经对 OpenGLES 进行了几次尝试,我不得不说,从概念的角度来看,我还没有准备好。Quartz2d API 在概念上更容易学习,因为它很容易通过几个命令启动和运行。现在,我可以毫不费力地定义形状和点对点图像。
OpenGLES 将成为我未来的东西,但它需要大量的代码来配置绘图视图、设置缓冲区等。如果你熟悉代码所做的一切,那么它会更容易一些。然而,从学习的角度来看,Quartz 是一种更容易快速上手的方法。
我正在使用的资源:前面提到的书,以及数量有限的包含教程的博客,这些都是有限的@best。在这一点上,与苹果文档预约并变得舒适,因为它是关于那里最好的(免费)东西(并且详尽无遗)话虽如此,我希望有人通过发布来证明我在这个网站上的错误一个很好的学习资源,但仅此而已。祝你好运。
我一直在寻找根本的差异,以便我可以在 OpenGL (ES) 或 Quartz 或混合之间做出决定。好消息是混合动力车是一种选择。显然,对于 OO 编程来说,Quartz 更容易掌握,而 Apple 的回答似乎是 OpenGL,“……是沉浸式应用程序的理想选择……”
我不想将类别限制为游戏,因为我相信任何游戏 UX 都可以应用于商业应用、生产力应用、娱乐观看等。出于同样的原因,我完全期待这项技术(无论是硬件还是硬件) s/w) 提前做出选择。