我必须开发一个应用程序“像俄罗斯方块游戏一样的行为”。
我从未使用过“OpenGL”来开发iPhone应用程序。
应用程序是这样的
对于这种应用,我应该使用open GL还是NOT?
即。是否有可能开发整个应用程序与视图和&这是动画吗? 如果是,那么与open gl相比会更复杂吗?
使用开放式GL有什么好处? (我知道它给出了很好的2D,3d外观) (但这里我的问题意味着 - 容易编码?) (或者与objective-c相比,open gl更复杂?) (我只是问,因为我不知道)
答案 0 :(得分:2)
从你问题的语气来看,你看起来很混淆OpenGL是什么,而不是Objective-C。
OpenGL是一个用C编程语言编写的库(简单来说),它擅长渲染形状(特别是3D形状)以便在屏幕上显示。它不会取代程序中的Objective-C,它只会帮助您绘制形状。如果不使用OpenGL,则需要在NSView(或子类)中编写某种绘制/渲染代码来渲染块。通过使用OpenGL,您将获得许多有用的C方法来绘制形状,否则您将不得不自己实现。除此之外,OpenGL还有数千小时的绘图优化,如果你使用它而不是试图自己实现形状渲染,你可以利用它。
话虽如此,OpenGL并非都是阳光和玫瑰。它的工作方式类似于状态机,并且对它的使用方式有自己的假设(就像任何API一样)。仅仅因为你知道C和Objective-C并不意味着使用OpenGL将是微不足道的。如果您从未编写过任何OpenGL代码,我建议您查看类似于Red Book的引用。
要记住的是,OpenGL本身并不是一种语言(忽略OpenGL着色语言)。它只是一组C函数,可以帮助您渲染图形。
答案 1 :(得分:2)
基本上你的选择是:
OpenGL是一个相当复杂的野兽,但它是迄今为止从iPhone中挤出性能的最佳方式。但是你需要它来进行俄罗斯方块游戏吗?几乎可以肯定没有。
Quartz是Mac OS X和iPhone中用于绘制图像和执行图像效果的工具包。因为我来自其他语言的OpenGL背景,我发现Quartz奇怪且令人沮丧。但是,对于两者都不熟悉的人来说可能更容易。
你可以使用UIKit在这里做所有事情,它肯定比其他选项容易得多。主要的缺点是它比较慢,但再一次做类似俄罗斯方块的游戏根本不重要。
在你使用UIKit之前,我建议你查看类似Cocos 2D之类的内容,它会为你提供OpenGL的优势,而不必担心处理所有内部工作。
答案 2 :(得分:1)
你可能也想问一下http://iphonegamedev.stackexchange.com/,这是一款适用于iPhone游戏的全新Stack Overflow变体。
答案 3 :(得分:0)
学习和学习了解你的需要。
请浏览以下链接。
它包含您需要的所有资源的所有必要链接。
http://maniacdev.com/2009/04/8-great-resources-for-learning-iphone-opengl-es/
编辑:
正确阅读你的问题后(实际上是我的问题 - 通过r& d我找到了解决方案)。
我认为 - 你需要开发一个2d应用程序。
转到以下链接。 2d动画的最佳选择。
http://code.google.com/p/cocos2d-iphone/
如果您需要示例代码,请不要忘记访问以下链接。