适用于iPhone的Frogger

时间:2008-11-20 20:27:58

标签: iphone

我的大多数编程经验都是使用表单(Windows窗体或ASP.NET)或连接硬件的小型嵌入式项目。最近我开始学习iPhone开发的一些教程。我有兴趣学习Objective-C和iPhone sdk。

我想制作一个类似蛙人的游戏来帮助我学习,但我从未真正投入游戏开发。我会有四个按钮(向上,向下,向左,向右),并且很好奇如何进行导航。制作一个大网格(矩阵)并使用它在屏幕上导航是否聪明?最终使用OpenGL会很好,但我还没准备好进入那个区域。

感谢您的任何意见。

4 个答案:

答案 0 :(得分:2)

您需要派生UIView的子类并覆盖keyDown:方法以获取按键。有一个NSTimer类,它适用于定期更新,UIImage用于在屏幕上加载和显示位图。

您可以只使用(x,y)坐标来绘制所有要绘制的对象,而不是使用显式网格。然后,您可以定期更新对象的位置。

答案 1 :(得分:2)

Here是一个关于Cocoa2D的简单教程,你可以用来制作2D游戏。

Coca2D教程的作者之一还有一个关于触摸检测的教程here

此外,完整的工作游戏的源代码可能很有用 - 我的问题列出了一些开源的完整游戏"Are there any Open-source iPhone applications around?"

答案 2 :(得分:1)

Lights Off是一款相对简单的iPhone游戏,它是在不使用OpenGL的情况下构建的。该消息来源已经发布,可能会让您对如何开始有所了解。

更多信息: http://furbo.org/2008/09/19/lights-off/

答案 3 :(得分:1)

我在你的情况下,在开始构建2D益智游戏之前,我查看了石英和opengl,最后我采用了opengl方式。它有点复杂,但它更灵活。在性能方面,你可能不需要它来构建一个蛙式克隆,但是如果你需要一次提升,就像许多形状一样,它将取决于任务。我所做的是用我自己的方法包装opengl代码,所以我不需要考虑太多。在我有了更多的经验之后,我开始直接在我想要优化的地方调用它。

要快速入门,您可以在xcode上使用opengl模板。您还可以使用它来查看NSTimer的设置方式。如果您需要纹理,请检查Apple CrashLanding示例应用程序中的Texture2D类。

这个网站是掌握opengl es的基本概念的绝佳资源,比如顶点和颜色数组: http://www.zeuscmd.com/tutorials/opengles/index.php

至于你提到的网格,请阅读有关基于磁贴的引擎。有很多关于这个主题的教程。这对于蛙人来说绝对是一个好主意。