Quartz 2D与OpenGL ES学习曲线

时间:2009-11-15 04:43:00

标签: iphone iphone-sdk-3.0 opengl-es quartz-2d

我一直在开发iPhone应用程序几个月。我想知道您对Quartz vs OpenGL ES 1.x或2.0学习曲线的看法。你可以告诉你的观点。我的问题是

*我是一名想成为游戏的游戏开发者,所以首先在石英开发,然后移动
是一个好主意   在OpenGL ES上或它没有什么区别  *当你遇到类似问题时,能否告诉你的经历

谢谢:)

4 个答案:

答案 0 :(得分:6)

Quartz 2D不适用于游戏开发恕我直言。它是一个软件渲染API。它不会给你实时渲染速度。它可以用阴影绘制图表或矢量文本,或者将多个图像混合在一起。只是不适合游戏。除非你想制作一款游戏,其中很少的图像在单色背景下移动,即使在这种情况下,我怀疑它在旧设备上会非常流畅。我见过一些明显用Quartz编码的游戏。一个可怜的景象。

迟早你最终会使用Open GL ES或基于它构建的游戏框架。我建议您检查cocos2D,SIO2引擎或SDK中的示例。 通过精心编程,可以制作具有视差滚动功能的Open GL ES游戏,即使在第二代设备上,相对少量的物体也能以60 FPS工作。 Tiny Wings就是这种游戏的一个例子。保持稳定的30 FPS根本不是问题。

答案 1 :(得分:4)

我跳过Quartz并直接进入OpenGL ES。我开始使用基于2D精灵的游戏。以为这很容易。

关键是要有一个很好的例子来看待。我使用了Lunar Lander克隆(Crash Lander),但我不认为这很容易找到。也许最近做过它的人知道一个使用当前最佳实践的更好,更新的例子。

答案 2 :(得分:0)

虽然我没有编程背景,但我和你描述的船在同一条船上。 (虽然我不知道你的背景是什么)目前,我正在学习编码,因为我学习了各种可用的API。我是一个客观的家伙,后退到基于c的Quartz API,这是一个有点挑战。幸运的是,S.Kochan编写的Objective-C 2.0编程有一个关于底层C功能的伟大章节,可以让你顺利运行。

我已经采取了几次@ OpenGLES,我不得不说,从概念的角度来看,我还没准备好。 Quartz2d API在概念上更容易学习,因为它很容易起床和放大用几个命令运行。现在,我正处于可以定义形状和指向图像的位置,而不会有太多麻烦。

OpenGLES将成为我未来的一部分,但它需要如此大量的代码来配置绘图视图,设置缓冲区等。如果您熟悉代码所做的一切,那么它会更容易一些。但是,从学习的角度来看,Quartz是一种更容易快速前进的方法。

我正在使用的资源:前面提到的这本书,以及包含教程的博客数量不多,这些博客的篇幅最为有限。在这一点上,预约苹果文档,并获得舒适,因为它是关于那里最好的(免费)东西(&详尽)随着说,我喜欢有人在这个网站上证明我错了发布了一个很好的学习资源,但就是这样。祝你好运。

答案 3 :(得分:0)

我一直在寻找根本区别,因此我可以在OpenGL(ES)或Quartz或混合动力之间做出决定。好消息是混合动力车是一种选择。显然,Quartz更易于掌握O-O编程,Apple的答案似乎是OpenGL,#34; ...非常适合沉浸式应用......"

http://developer.apple.com/library/ios/#DOCUMENTATION/General/Conceptual/Devpedia-CocoaApp/DrawingModel.html

我不想将类别限制为游戏,因为我相信任何游戏用户体验都可以应用于商业应用,生产力应用,娱乐观看等。同样,我完全期待这项技术( h / w和s / w)推进做出选择。