2010-10-22 72 views
5

另一个问题。我一直在研究这个美好社区为我追求游戏开发的旅程所提供的一切。OS X和iPhone的游戏开发初学者路径

我来,我宁愿我的本机,OS X上进行开发的结论 - 最终导致iPhone。

我已经拥有两个大书呆子牧场导游的,iPhone编程 - 大书呆子牧场指南和学习编程在Mac OS X - 大书呆子牧场指南。

我试图拍摄的目标是类似于暴雪暗黑破坏神II的游戏。

当通过这些书去,一切都显得有点过我的头,由于缺乏Objective-C的经验(所以我怀疑)。

什么是最好的初学者友好的方式来达到我的目标?我一直在为Apress等的初学者或直接C书查看Objective-C书籍。

经验丰富的开发人员如您自己如何引导新手走过这条道路?

问候

  • 编辑 -

要回答为什么我选择了苹果的路线,它只是看起来是最舒服(环境是本地的机器)。我可能是非常错误的。我在看Unity,它支持C#,JavaScript和Boo。其他人喜欢Panda3D使用Python。我只是不确定,似乎决策过程变得相当具有挑战性。

+0

@pmg,是的,我有。当我进一步了解时,对我来说事情变得有点激烈。这种语言似乎只是溢出了,它看起来不像我以前见过的任何东西。 – 2010-10-22 16:01:38

+0

哎呀..对不起,我发布后大约10秒后删除了评论。我认为很明显你已经完成了“你好世界”的事情,当我重读你的问题 – pmg 2010-10-22 16:03:25

+0

哦哎呀。我以为你在讽刺呢。 – 2010-10-22 16:12:06

回答

0

如果我是你,我就开始了与C,学习编程,算法和内存分配(在C非常重要的概念)的基础知识。然后,您可以最多移动阅读Objective-C的一些书籍,并获得像动态类型,垃圾收集等

至于软件的面向对象的程序设计和更高级别的概念的想法,如果你是OS X你想获得XCode,这是一个由苹果公司为iOS和OS X开发的集成开发环境。显然,它是免费下载的(尽管这正是苹果在他们的网站上说的,不知道,我没有苹果电脑)。

至于书籍等,我只是得到一些直接的C书,看看一些教程。从封面阅读这些内容,并特别关注内存分配和管理以及指针这些重要的(令人沮丧的)概念。

+0

我将从Mac上的Learn C开始,除非有更好的阅读。 - 编辑 - 有意回击,学习新语言时有什么好的练习。我发现我很了解我脑海中的概念,只是在执行它们时遇到麻烦而缺乏练习。 – 2010-10-22 16:41:45

2

我建议你

一)学习C(尤其是内存管理)

B的基础)学习的基础知识,Objective-C的

C)从书本上学到的iPhone SDK (我喜欢“从iPhone开发”和第2卷)

d)接你觉得有趣,这是不是太有挑战,只是代码的任何项目。你会发现,当你完成时,你可能会认为你先做的事情是可怕的,但你会在这个过程中学到很多东西

e)访问Stackoverflow.com尽可能经常,它有大部分的你将会得到的问题的答案:

3

这取决于你正在制作的游戏类型 - 但是iPhone上的许多顶级游戏都是用一个名为cocos2d的开源框架创建的。这是神话般的,简化了一切,有很好的教程,并专门为iPhone提供。

瞧瞧吧:

http://www.cocos2d-iphone.org/

+0

哇。所以我从来没有真正*尝试* Cocos2d - 因此在发布后的过去24分钟内 - 我阅读了一些示例和教程 - 下载了该套件(其中还包括Box2d物理引擎) - 安装并构建了套件 - 以及现在有一大堆模拟器上运行的示例游戏!非常强大的东西! – Brad 2010-10-22 18:23:36

+0

伟大的评论。我也是这么做的,我很惊讶我只能通过查看这些游戏的一些代码来学习。 – krx 2010-10-22 19:02:31

+0

非常有趣,你可以创建一个类似于暗黑破坏神和鸟瞰/第三人称视角的视觉游戏吗?或者所有RPG都会像最终幻想的经典? – 2010-10-22 19:03:25

0

我发现,学习一门新语言的好方法是先从复制常用的命令行工具,如厕所,grep的,LS等,这将教你I/O的基本知识(包括file和stdin/stdout)以及一些基本的字符串解析,以及其他好东西。另外,由于您可以轻松地与标准命令的输出或行为进行比较,因此您有确定性的方法来确定您的程序是否正确执行。

K&R以及Programming in Objective-C 2.0是学习C和Objective-C基础知识的好地方。

一旦你掌握了语言的基础知识,从基本的GUI程序开始(Hillegass书中的那些是一个好的开始)。一旦你可以在基础逻辑的前面挂上一个基本的图形用户界面,现在是时候开始更加认真地考虑你的游戏了。 Hillegass的书有使用NSOpenGLView的基本介绍,您可以使用它来手动绘制2D和3D。重要的是要注意,在阅读任何书中的例子时,您需要彻底理解他们在做什么以及他们如何做,足以让您自己做一些修改以增强/改变行为您正在使用的示例程序。

一旦您了解了底层游戏逻辑如何挂钩用户可以看到的基本知识,现在是时候去找到一个游戏/绘图库,它会让您知道您要去的地方。你绝对不想自己编写所有的图形例程来玩类似于暗黑破坏神的游戏。

1

如果你在Mac上工作,那么事情会变得有趣。

最大的游戏市场几个数量级是控制台和Windows。如果您只是针对iPhone和OSX,则Mac是开发的理想选择。但是,这是一个有限的(Mac OS),非常有竞争力的(iPhone)市场。如果你想要成为真正的销售产品,将自己从起跑门限制到OSX可能是一个错误。

如果您刚刚开始并希望了解是什么让所有这些游戏垃圾都剔除,请坚持您最喜欢的语言和操作系统。将太多变量引入学习考察是失败的重要因素。关于这类应用程序的好处之一是您可以选择的算法和技术本质上是跨平台的。矩阵是矩阵,无论您是在TI-89还是在Alienware桌面上工作。

但是,如果出现这种情况,请尝试并了解您在代码中使用的平台特定的小部件。计划扔掉这一个。写一堆测试应用程序。而且,当你确信自己已经准备好构建真实的东西时,你就可以准备好用Windows(I LOVE XNA),带有DirectX或OpenGL的C++或者其他什么来打破虚拟机或新桌面,以及变量,你必须学习的新材料,不是关于图形或数学或游戏玩法,而是关于平台本身。

写下“Hello,World!”如果你没有搞清楚你想说什么,但只说出它的方式会容易得多。另外,并非针对暴雪的克隆,而是从简单的东西开始,像Pong。然后制作3D Pong。然后添加重力。然后碰撞检测。等等。

当你有游戏开发特定问题时,还可以查看gamedev.stackexchange.com。这是一个很低的流量比SO,很多参与者都是青少年粉丝,但是那里有很好的知识可供挖掘。

1

一旦你掌握了Objective C和iOS API,你可以很快为iPhone开发一个小型游戏。我花了大约4周的时间开发出一款游戏逻辑有限的小型iPhone游戏。下面是我的经验新手必看:

http://corrino-software.com/how_long_does_it_take_to_make_an_iphone_game

然而,就像一个暗黑式的游戏将是一个庞大的工程。正如David所说,您最好从一开始就规划更小,更易于管理的项目,然后在您熟悉开发流程并熟悉您需要的工具和库后,便可以转向更大的项目。