
无论是不是高中生,都是一样的:
如果你的脑海中有一个游戏的idea,
那么就用任何你认为合适的方法实现出来,
可以是语言、文字、涂鸦、剪纸,甚至是一个游戏程序![1]
然后给小伙伴们玩!
恭喜!你已经成为了一个游戏开发者了!
(楼上
很好的阐释了这个定义 :D)
没错,我所理解的游戏开发者,准确地说,独立游戏开发者,
首先是个艺术家,其次是设计师,最后才是工程师。
You don't need to be a game developer to develop a game.
Once you develop a game, you are a game developer.
----------长篇大论-----------
相对应的:
“脑海有idea”,这是作为艺术家的事情。
在游戏开发团队中,idea阶段往往是团队里所有人都可以参与的,所以无论你是programmer,artist,designer,QA,还是project coordinator,在这个阶段都是艺术家。[2]
如何培养在游戏方面的”艺术天分“?
我也不知道,大概是如
所说的多读书吧。
任何书都可以读,上至天文,下至地理。
或许一本日本战国的历史小说,能成就一个十几年的经典系列。[3]
“用任何合适的方法实现idea“,笼统地涵盖了设计师和工程师的职责。
有了idea之后,设计师就需要针对这个idea来设计核心机制、设定游戏类型、设计辅助机制、设计游戏背景等等 [4]。
那么如何学习这些设计技能?
简单地说,是要玩各种各样的游戏,了解并解释它们的核心机制、辅助机制,剖析它们的优劣。这样,你就能拥有游戏设计的基本涵养。
比方说,Kingdom Rush和其他塔防相比多出了出士兵的塔,这会带来什么样的体验?
可以看看
中
同学和我的答案。
但是,游戏设计是一个非常博大精深的课题。我只懂皮毛,只能建议到此。
而工程师需要做的工作,就是将设计实现出来。
如[1]所说,可以用各种媒介来实现游戏,它们都有不同的价值和代价,在游戏开发的不同阶段需自行取舍。但一般来说,游戏最终会以程序的方式实现出来,所以了解game programming是必要的。
作为game programmer的我,就抛砖引玉地啰嗦一点吧。
如何学习game programming,首先应该是学习programming,再学习game specific stuff。
关于programming的学习,
是一个很好的答案。
但有一点需要注意的是,热情在困难面前是很容易磨灭的,所以学编程的时候,不要忘了你的目的是什么。
不需要成为了编程高手才能做game programming,可以在一边学习的过程中,一边做简单的小游戏。例如text-based的小游戏。
而学习game programming,最有效率的方法是加入一个团队,或者自己设定一个目标,制作一个游戏。因为在实战的过程中,你才会有动力去认真研究一些技术和框架。
artist也是工程师,但我对artist的修炼知之甚少,就有待高人了。
------------注释-------------
[1] 语言、文字、涂鸦、剪纸与游戏程序的复杂程度是递增的,不是每一个idea都值得被做成程序,可能一幅简单的涂鸦就能表达出你的idea。
[2] 此段提到的”artist“和”艺术家“并不指一个意思,”artist“是指负责美术的开发者,”艺术家“是指提出游戏idea的开发者,可以是任何岗位的人员。
[3] 此处意淫Total War系列是由日本战国的历史小说所成就的。不过后经查证,是由于Command & Conquer的成功而推动Total War的开发的 :p
[4] 核心机制 core mechanic,指游戏最核心的玩法,这个决定了游戏是不是好玩;
辅助机制 secondary mechanics,指其余非核心的机制,如FPS的武器系统,RTS的阵型等,这决定了游戏的耐玩性。
