欢迎阅读本书。笔者有多年游戏设计方面的经验,并在多所大学担任过游戏设计课程的教授,其中包括密歇根州立大学的媒体和信息系,以及南加州大学的互动媒体及游戏专业,本书便是基于笔者多年的专业经验编写而成的。
本前言主要介绍本书的写作目的、内容以及使用方法。
【本书的写作目的】
本书的写作目的非常明确:提供读者成为成功游戏设计师和原型设计师所需要的工具和知识,笔者尽可能地将所有的相关知识和技能都纳入了本书。与其他教程类的书籍不同的是,本书结合了游戏设计的原则与数字开发(也就是计算机编程)内容,并将两者融入互动原型中。随着性能先进且简便易用的游戏开发引擎的出现(比如Unity),原型构建正变得前所未有的简单。而且,学会原型开发也有助于你成为一名更优秀的游戏设计师。
第Ⅰ部分:游戏设计和纸面原型
本书第Ⅰ部分介绍了游戏设计的不同理论和分析框架,这些内容在早年出版的一些书籍里均有涉及。本部分介绍了一种将这些理论结合并拓展的方法——四元分层法。四元分层法探究了与互动体验设计相关的决策内容。本部分同时含有不同游戏设计原则及其挑战难度,阐述了纸面原型的设计过程、游戏测试和迭代设计。这些具体的信息和知识将有助于你成为合格的设计师,有效的项目和时间管理策略将帮助你管理好自己的开发项目。
第Ⅱ部分:数字原型
本书第Ⅱ部分介绍了编程的内容。该部分基于笔者作为教授多年为零基础的学生授课的经验,笔者在课堂上也使用这些内容教导学生如何利用数字编程表达自己游戏设计的理念。如果你此前没有学过任何编程或开发的相关知识,也没有任何经验的话,那么第Ⅱ部分的内容就是为你量身定做的。如果你此前有过一定的编程经验,那么你也可以学到编程的几个小窍门,了解到一些不同的编程方法。第II部分囊括了C#的基础内容及类继承和面向对象编程。
第Ⅲ部分:游戏原型实例和教程
本书第Ⅲ部分围绕多种风格迥异的原型实例教程展开,你能学习到不同类型游戏的开发方法。该部分内容的主要目的是,通过展示不同类型游戏的开发方式,展现开发游戏原型的最佳办法,并且这些知识为你将来的工作打下了良好的基础。市场上其他图书多数只介绍一种类型的教程,篇幅长达上百页。相比之下,本书的教程种类繁多,短小精悍。虽然没有那些书籍的单个教程内容详尽,但是笔者认为学习多种不同类型的教程更有助于读者将来自己开发项目。
第Ⅳ部分:附录
本书包含了一些很重要的附录内容,值得在这里提一下。笔者将书中多次提及的信息,以及笔者认为读者阅读后有可能想要再次查阅的内容放在了附录,因此本书的附录并不是通篇为重复的内容,也不需要你翻阅不同章节查找。附录A是运用Unity创建游戏项目的步骤。附录B是篇幅最长的附录,虽然该附录的名字十分平庸,但是笔者认为你以后会经常查阅这部分的知识。附录B“实用概念”里集合了笔者在游戏原型开发中经常使用的技术和策略。
【数字原型:Unity和C#】
本书提到的所有电子游戏实例均基于游戏引擎Unity和C#语言。笔者在讲授电子游戏开发和互动体验课程上有十多年的经验,在笔者看来,目前为止Unity是学习游戏开发的最佳工具,C#语言则最适合原型设计师学习。虽然现在也有一些开发工具不需要使用者具备任何编程技术(比如Game Maker和Construct 2),但是Unity的资源包更灵活多变,并且基本上都是免费的(Unity的免费版本包含付费版本的大多数功能,本书通篇用到的 Unity 功能也都是免费版本的)。很多工作室会用Unreal,但是Unreal的内容不是太简单就是太难。如果你真的想学习游戏编程,那么 Unity是你的最佳选择。
同样,有一些编程语言要比 C#语言更容易使用。过去笔者教过学生 ActionScript和JavaScript,但这么长时间以来 C#的灵活性和强大的功能一直让笔者印象深刻。学习C#不仅是学习简单的编程知识,更是学习编程的方法。JavaScript对使用者在编程时的严谨性要求不高,可笔者发现这实际上会减慢开发的速度。C#在这方面则要严格得多(通过强类型变量等内容),这不仅有助于使用者成为更出色的程序员,同时也会提升编程速度(比如强类型提供代码自动完成的提示,让使用者更快速、更准确地编程)。
【本书面向的受众群体】
市面上有很多关于游戏设计的书籍,也有很多关于编程的图书。本书的宗旨就是填补游戏设计和编程之间的缺口,将两者联系起来。随着像Unity的游戏开发技术趋于成熟,游戏设计师把自己的想法转换为数字原型就变得极为重要。本书能帮助你:
如果你有兴趣致力于游戏设计领域,但是从未学过编程,那么本书是你的合适选择。第Ⅰ部分介绍几种不同的游戏设计理论,以及探索设计理念和方法。第Ⅱ部分主要教零基础的读者学习编程,使其了解面向对象的体系。自从笔者担任大学教授以来,主讲的课程主要都是面向没有编程基础的学生。笔者将自己的所有教学经验提炼浓缩至第Ⅱ部分内容中。第Ⅲ部分阐述了不同游戏类型的游戏原型开发方法,每一种方法都能快速地把概念转变成数字原型。本书的附录列举了游戏开发和编程的概念,提供了扩展学习的资源。附录B“实用概念”里有很多深入探究的内容,接下来的很多年里你也会经常用到这部分内容。
如果你有编程经验,同时对游戏设计感兴趣,那么本书第Ⅰ部分和第Ⅲ部分对你最有用。第Ⅰ部分介绍几种不同的游戏设计理论以及探索设计理念和方法。第Ⅱ部分介绍 C#语言,以及如何在 Unity 环境中运用 C#,你可以跳过这部分内容。如果你熟悉其他编程语言,那么就会发现C#和C++很相似,同时带有Java的一些高级功能。第Ⅲ部分阐述了不同游戏类型的游戏原型开发方法。用 Unity 开发游戏和用其他游戏引擎开发游戏截然不同,因为许多元素都是在编程外进行设计的。本书中举出的每一种原型实例都适合用在 Unity 上,并且开发速度都很快。你应该仔细阅读附录 B,该附录包含了不同Unity开发概念的详细信息和内容,值得翻阅查看。
【读者服务】
关注“博文视点Broadview”公众号,回复:38981
✦ 获取博文视点学院20元优惠券
✦ 获取免费增值资源
✦ 加入本书读者交流群,与本书作者互动
✦ 获取精选书单推荐