目录
-
- [1. 选择一个(小)想法](#1. 选择一个(小)想法)
- [2. 选择引擎或框架](#2. 选择引擎或框架)
- [3. 创建原型](#3. 创建原型)
- [4. 寻找资产](#4. 寻找资产)
- [5. 将其变成一个完整的游戏](#5. 将其变成一个完整的游戏)
- 6.开始一些新的事物!
独立游戏开发可用的工具和资源比以往任何时候都多。这意味着独立游戏开发者可以制作十年前不可能制作的游戏,但这也可能使入门变得非常困难。
为了让大家走上正确的道路,我将分享一些有用的步骤,如何选择正确的库或框架,以及对于初级游戏开发者来说真正重要的是什么。
1. 选择一个(小)想法
新游戏开发者经常会受到他们喜欢玩的游戏的启发。如果你对《文明》或《星露谷物语》之类的游戏感兴趣,那么你可能想从一开始就深入研究类似的项目。
游戏开发是一项需要不断练习才能成长起来的困难技能。这就像学习钢琴一样------你必须从简单易懂的歌曲开始,然后逐渐扩展到更具挑战性的曲目。
开始学习游戏开发的最佳方式是选择一个简单的想法或类型,然后将其缩小到可玩所需的最核心功能。你想制作一款平台游戏吗?你可能不需要任何敌人、花哨的机制或移动平台。从根本上讲,你所需要的只是简单的玩家移动、跳跃能力和获胜条件。
制作像这样的简单游戏是开始成长的最佳方式。无论游戏有多小,拥有一个完整的游戏都会帮助你保持学习的动力。
2. 选择引擎或框架
下一步是确定你想要使用什么引擎、框架或库。
- 游戏引擎(如 Unity 或 Unreal)通常带有图形界面和大多数内置功能。
- 框架和库通常只是用现有编程语言编写的代码。它们提供了创建游戏和在屏幕上显示内容所需的所有功能,但它们需要更多设置。随着游戏的发展,它们通常缺少一些对更成熟的游戏有用的复杂功能(游戏引擎提供)。另一方面,由于它们更轻量,它们通常可以让你更自由地按照自己的意愿构建代码和游戏。
在尝试选择完美的游戏引擎或框架时,很容易不知所措。我能给出的最好建议是找到让你最专注于游戏开发的选项。
非程序员
如果你没有编程经验,我建议使用 Unity 或 Godot 等引擎。它们通过图形界面提供许多功能,这意味着你无需完全掌握某种编程语言就可以开始制作游戏。你最终仍需要学习如何编码,但引擎会让你在学习过程中更容易做到这一点。
程序员
如果你是一名程序员,我会寻找一个你熟悉的语言的游戏框架。大多数框架都相对容易学习,熟悉这些工具将使你能够专注于学习如何制作游戏。
程序员有时会对使用 GUI 有一种天生的厌恶感,这可能导致他们完全避免使用游戏引擎。这是可以理解的,学习引擎的 UI 无疑是一项艰巨的任务。但从长远来看,使用引擎的好处是巨大的。
我鼓励所有程序员尝试在引擎中制作一款完整的小型游戏。你可能会惊讶地发现你有多喜欢它,以及它有多容易。无论你决定继续使用引擎还是重新使用框架,你都会了解双方的优缺点。
2D 与 3D
顺便说一句,即使你的目标是制作 3D 独立游戏,我也建议在前几款游戏中开始学习 2D。2D 工作更简单,查找或制作资产(如艺术和动画)也容易得多。
你的目标是学习,使用 2D 可以帮助你在开始时更有效地学习。一旦你熟悉了一点,过渡到 3D 就会容易得多。
3. 创建原型
现在是时候开始实际开发了。你的目标是创建一个最小可行产品 (MVP)。删除所有对你的核心机制或想法不必要的功能。现在甚至不必担心艺术或声音;使用基本的方形精灵来制作所有内容(或同样简单的东西)。
这不仅有助于你限制游戏的范围,而且还能提供宝贵的经验,让你学习如何让游戏变得有趣。如果你有一个平台游戏,你所能做的就是移动和跳跃,那么你游戏的乐趣就直接与你的移动和跳跃机制的感觉息息相关。调整跳跃的高度或角色的奔跑速度会对游戏的感觉产生巨大影响。
核心机制始终是游戏趣味性的最大因素。即使是功能非常酷的大型游戏也无法挽救糟糕的核心机制。从简单的原型开始,你可以轻松试验机制并学习如何调整它们以获得最佳体验。
4. 寻找资产
下一步是将图片和声音添加到你的游戏中。如果你对此感兴趣,当然可以尝试自己制作。但对于大多数人来说,最好在网上找到免费资源。itch.io 和 OpenGameArt 等网站有很多很棒的资源。你制作的大多数游戏在早期版本中都会有原型或临时资源,因此学习如何在线查找占位符图像和声音是很好的。
尝试不同的声音和图形。你会注意到,添加真实资产(尤其是声音)会对游戏的感觉产生巨大影响。
5. 将其变成一个完整的游戏
你制作了一款小游戏,游戏机制简单、良好,还带有一些图形和声音,将所有内容整合在一起。现在它真的开始像一款游戏了!制作你的第一款完整独立游戏还有最后一步,我认为这是最重要的一步:实现完整的游戏循环,包括获胜、失败和重新开始。
我再怎么强调这一点也不过分。要想成为一名更优秀的游戏制作者,你能做的最有价值的事情就是完成你的游戏。完成一款游戏并不意味着你再也不会改变它。这意味着完整的游戏就在那里------无论它有多小。你可以赢,可以输,如果愿意的话,可以继续玩它。
每次"完成"看起来都不一样
当然,并非所有游戏都有获胜或失败的条件。例如,有些游戏涉及获得尽可能高的分数,或者尝试看看你能坚持多久。所谓完成游戏,我的意思是实现所有适合你正在制作的特定游戏的总体游戏机制。对于某些人来说,这可能需要主菜单或保存和加载系统。做适合你的游戏的事情,但要小心,不要被你所制作的游戏实际上不必要的功能所诱惑。
真正完成一款游戏的价值
你会惊讶于拥有一款完整的游戏会带来多大的不同。没有什么比拥有可以与他人分享并获得反馈的东西更能激励你了。此外,如果游戏循环已经存在,以后添加功能会容易得多。你已经拥有了完全可测试和可玩的东西,因此更容易看到新添加的内容如何影响现有内容的平衡。
对于大多数刚进入游戏开发领域的人来说,最大的障碍之一就是他们从未学会如何完成一款游戏。习惯于现实地规划项目范围(这样你才有机会完成它们)并推动自己完成整个游戏循环是学习将其作为开发日常工作的重要一步。
6.开始一些新的事物!
恭喜!你已经制作了自己的第一款独立游戏。你不仅制作了它,而且完成了它。你完成了调整核心机制、添加图形和声音等重要资产以及完全实现游戏循环的工作。你已经比大多数想要进入游戏开发领域的人走得更远,并且你获得的经验将继续使你开始的每个新项目都比之前的项目更容易。
现在继续吧!学习制作游戏的最好方法就是制作游戏,无论游戏有多简单或多小。找到你以前没有尝试过的新机制或想法,想出一个使用这些想法的最简单的游戏,然后制作它。随着你继续拓展和尝试新事物,你会越来越熟悉你的工具和制作游戏本身的基础知识。
记住,在制作每款游戏时都要遵循所有这些步骤。如果你继续磨练技能并完成游戏,你很快就会拥有一份令人印象深刻的作品集。你很快就能准备好处理你梦想中的游戏并开始更大的项目。
除了本指南之外,我还制作了专栏来帮助大家使用 JavaScript 创建游戏。如果你希望进一步提高游戏开发技能,我希望你查看这些教程。祝你在游戏开发之旅中好运!