新書推薦:
《
金托邦:江湖中的沉重正义
》
售價:HK$
60.5
《
易经今解:释疑·解惑·见微
》
售價:HK$
88.5
《
东欧史(全二册)-“中间地带”的困境
》
售價:HK$
221.8
《
虚拟资本:金融怎样挪用我们的未来
》
售價:HK$
77.3
《
刻意练习不生气
》
售價:HK$
39.2
《
大宋理财:青苗法与王安石的金融帝国(全彩插图本)
》
售價:HK$
109.8
《
安全感是内心长出的盔甲
》
售價:HK$
67.0
《
快人一步:系统性能提高之道
》
售價:HK$
110.9
|
編輯推薦: |
想要成为一名优秀的游戏设计师?
你需要具备丰富的设计与实践经验,并且掌握功能强大的优秀设计工具。
游戏设计之路没有捷径,幸运的是,这本书能够成为你追梦路上的良师益友。
本书特色:
Unity C#游戏开发详解,独立游戏开发的优选组合。
全面解读新游戏设计与开发概念,设计理念快速转化为数字原型。
解密8个不同类型的完整游戏原型,讲解深入,可参考价值超高。
通过代码调试、快速迭代改进游戏设计,实现优秀的游戏平衡与游戏体验。
传授如何在竞争激烈、瞬息万变的游戏行业中生存并获取成功的秘诀!
海报
|
內容簡介: |
这是一本将游戏设计理论、原型开发方法以及编程技术巧妙结合在一起的书籍,目的是填补游戏设计与编程开发之间的缺口,将两者联系起来。随着 Unity 游戏开发技术趋于成熟,游戏设计师把自己的想法转换为数字原型已变得极为重要。书中汇集了国际知名游戏设计专家Jeremy Gibson 在北美地区首屈一指的游戏设计课程的教学经验,整合了成为成功游戏设计师和原型设计师所需要的相关技能与知识,能够有效帮助读者熟练运用 Unity 进行原型开发与游戏设计,以及借助 C#进行游戏编程。游戏制作是一门手艺,是很多人的梦想,但其重重困难也时常令人望而却步。当你徘徊在游戏制作之门手足无措时,这本书可以从理论和实践两方面帮你打下牢固的基础。翻开这本书,跟随其中的指引冲破阻碍,也许创造下一个经典游戏的就是你!
|
關於作者: |
本书作译者文字水平较高,行文流畅,从事游戏开发工作多年,参与多个游戏项目的开发,拥有扎实的理论基础和实践经验。
Jeremy Gibson在密歇根大学安娜堡分校的电气工程与计算机科学专业任教,讲授计算机游戏设计课程,同时也是 ExNinja Interactive有限责任公司的创始人之一。 2009年至 2013年间,担任南加州大学电影艺术学院的互动媒体及游戏专业的助理教授,讲授游戏设计和原型开发课程。在他任职期间,该学院的游戏设计课程在北美地区首屈一指。Jeremy同时担任 IndieCade独立游戏展会的教育和发展主席,负责 IndieX-change和 GameU峰会。自 2009年开始,每年在游戏开发者大会上发表演讲。
Jeremy于 1999年取得了得克萨斯大学奥斯汀分校的广播、电视、电影专业的理学学士学位,于 2007年取得了卡内基梅隆大学娱乐技术专业的硕士学位。 Jeremy曾在 Human Code和 frog design公司担任程序员和原型设计师,曾在 Great Northern Way Campus(温哥华,BC)、得克萨斯州立大学、匹兹堡艺术学院、奥斯汀社区学院、得克萨斯大学奥斯汀分校任教,并曾在迪士尼、Maxis、Electronic Arts和 Pogo.com等公司任职。在攻读研究生期间,Jeremy的团队开发了游戏产品 Skyrates,荣获 2008年独立游戏峰会的 Silver Gleemax奖项。同时 Jeremy也是第一位在哥斯达黎加讲授游戏设计课程的教授。
|
目錄:
|
第I部分游戏设计和纸质原型
第1章像设计师一样思考2
1.1你是一名游戏设计师2
1.2Bartok:游戏练习2
1.3游戏的定义7
1.4小结12
第2章游戏分析框架14
2.1游戏学的常用框架14
2.2MDA:机制,动态和美学14
2.3规则,戏剧和动态元素17
2.4四元法19
2.5小结21
第3章分层四元法22
3.1内嵌层22
3.2动态层23
3.3文化层24
3.4设计师的责任25
3.5小结25
第4章内嵌层27
4.1内嵌机制27
4.2美学内嵌31
4.3叙事内嵌33
4.4技术内嵌39
4.5小结40
第5章动态层41
5.1玩家的角色41
5.2涌现42
5.3动态机制42
5.4动态美学46
5.5动态叙事50
5.6涌现叙事51
5.7动态技术52
5.8小结52
第6章文化层53
6.1游戏之外53
6.2文化机制54
6.3美学文化55
6.4叙事文化55
6.5技术文化56
6.6授权的跨媒体不属于文化层57
6.7游戏的文化影响57
6.8小结58
第7章像一个设计师一样工作59
7.1迭代设计59
7.2创新65
7.3头脑风暴与构思66
7.4改变你的想法68
7.5规划作品的范围大小70
7.6小结71
第8章设计目标72
8.1设计目标:一个不完整的清单72
8.2以设计为中心的目标73
8.3以玩家为中心的目标75
8.4小结87
第9章纸面原型88
9.1纸面原型的优势88
9.2纸面原型工具89
9.3一个纸面原型的例子90
9.4纸面原型的优点97
9.5纸面原型的缺点98
9.6小结98
第10章游戏测试100
10.1为什么要测试游戏100
10.2成为出色的试玩者101
10.3试玩者圈子101
10.4测试方法103
10.5其他重要的测试办法108
10.6小结109
第11章数学和游戏平衡110
11.1游戏平衡的意义110
11.2安装Apache OpenOffice Calc110
11.3用Calc检查骰子111
11.4概率118
11.5桌游中的乱数产生技术121
11.6加权分布123
11.7排列125
11.8正负反馈126
11.9使用Calc调整武器平衡127
11.10小结132
第12章谜题设计133
12.1谜题无处不在133
12.2Scott Kim与谜题设计133
12.3动作解谜游戏的几种类型139
12.4小结140
第13章引导玩家142
13.1直接指引142
13.2间接指引144
13.3介绍新技能和新概念149
13.4小结151
第14章数字游戏产业152
14.1关于游戏产业152
14.2游戏教育155
14.3走进行业中去157
14.4等不及开始做游戏了160
14.5小结161
第II部分数字原型
第15章数字化系统中的思维164
15.1棋类游戏中的系统思维164
15.2简单命令练习165
15.3游戏分析:《拾苹果》(Apple Picker)167
15.4小结171
第16章Unity开发环境简介172
16.1下载Unity软件172
16.2开发环境简介173
16.3首次运行Unity软件176
16.4设置Unity的窗口布局181
16.5熟悉Unity界面184
16.6小结185
第17章C#编程语言简介186
17.1理解C#的特性186
17.2阅读和理解C#语法190
17.3小结193
第18章HELLO WORLD:你的首个程序194
18.1创建新项目194
18.2新建C#脚本196
18.3让事情更有趣200
18.4小结208
第19章变量和组件209
19.1变量209
19.2C#中的强类型变量209
19.3重要的C#变量类型210
19.4变量的作用域213
19.5命名惯例213
19.6Unity中的重要变量类型215
19.7Unity游戏对象和组件220
19.8小结222
第20章布尔运算和比较运算符223
20.1布尔值223
20.2比较运算符226
20.3条件语句229
20.4小结234
第21章循环语句235
21.1循环语句的种类235
21.2创建项目235
21.3while循环236
21.4死循环的危害236
21.5更实用的while循环237
21.6dowhile循环238
21.7for循环239
21.8foreach循环240
21.9循环中的跳转语句241
21.10小结243
第22章List和数组244
22.1C#中的集合244
22.2List245
22.3数组249
22.4多维数组252
22.5交错数组255
22.6应该使用数组还是List259
22.7小结259
第23章函数与参数263
23.1创建函数示例的项目263
23.2函数的定义263
23.3函数的形式参数和实际参数266
23.4函数的返回值267
23.5使用合适的函数名称269
23.6什么情况下应该使用函数269
23.7函数重载270
23.8可选参数271
23.9params关键字272
23.10递归函数273
23.11小结274
第24章代码调试276
24.1如何开始调试276
24.2绑定或移除脚本时出现的错误278
24.3使用调试器逐语句运行代码281
24.5小结287
第25章类289
25.1理解类289
25.2创建Enemy类示例的项目290
25.3类的继承295
25.4小结298
第26章面向对象思维299
26.1面向对象的比喻299
26.2面向对象的Boids实现方法301
26.3小结310
第27章敏捷思维311
27.1敏捷软件开发宣言311
27.2Scrum方法论312
27.3小结319
第III部分游戏原型示例和教程
第28章游戏原型1:《拾苹果》 322
28.1数字化原型的目的 322
28.2准备工作323
28.3开始工作:绘图资源323
28.4编写《拾苹果》游戏原型的代码329
28.5图形用户界面(GUI)和游戏管理340
28.6小结346
第29章游戏原型2:《爆破任务》348
29.1准备工作:原型2348
29.2游戏原型概念348
29.3绘图资源349
29.4编写游戏原型的代码354
29.5小结380
第30章游戏原型3:《太空射击》 382
30.1准备工作:原型3382
30.2设置场景384
30.3创建主角飞船385
30.4添加敌机397
30.5随机生成敌机401
30.6设置标签、图层和物理规则403
30.7使敌机可以消灭主角飞船405
30.8重新开始游戏409
30.9射击410
30.10添加升级道具421
30.11解决代码中的竞态条件428
30.12让敌机可以掉落升级道具430
30.13为其他敌机编程432
30.14添加粒子效果和背景444
30.15小结446
第31章游戏原型4:《矿工接龙》449
31.1准备工作:原型4449
31.2项目Build设置450
31.3将图片导入为Sprite451
31.4用Sprite制作纸牌453
31.5《矿工接龙》游戏469
31.6在代码中实现《矿工接龙》游戏471
31.7为游戏添加得分机制489
31.8总结504
第32章游戏原型5:Bartok505
32.1准备工作:原型5505
32.2编译设置507
32.3Bartok编程508
32.4小结536
第33章游戏原型6:Word Game537
33.1准备工作:Word Game原型537
33.2关于Word Game538
33.3解析Word List539
33.4创建游戏544
33.5屏幕布局549
33.6添加交互557
33.7添加计分561
33.8添加动画564
33.9添加色彩567
33.10小结569
第34章游戏原型7:QuickSnap571
34.1准备工作:QuickSnap原型571
34.2构建场景572
34.3游戏编程579
34.4小结598
第35章游戏原型8:Omega Mage600
35.1准备工作:Omega Mage原型 600
35.2构建场景602
35.3法师角色607
35.4鼠标交互609
35.5移动613
35.6物品栏和选择道具618
35.7施展火场法术625
35.8切换房间634
35.9补充敌人638
35.10攻击法师646
35.11抽象敌人接口651
35.12创建EnemyFactory653
35.13小结657
第 IV 部分 附录
附录 A 项目创建标准流程 ...................................................................................................... 660
A.1 建立新项目 ......................................................................................................... 660
A.2 场景编码就绪 ..................................................................................................... 662
附录 B 实用概念 ...................................................................................................................... 665
B.1 C#和 Unity 代码概念 ......................................................................................... 665
B.2 数学概念 ............................................................................................................. 684
B.3 插值 ..................................................................................................................... 693
B.4 角色扮演游戏 ..................................................................................................... 706
B.5 用户接口概念 ..................................................................................................... 707
|
內容試閱:
|
前言
欢迎阅读本书。笔者有多年游戏设计方面的经验,并在多所大学担任过游戏设计课程的教授,其中包括南加州大学的互动媒体和游戏专业、密歇根大学安娜堡分校的电气工程与计算机科学专业等,本书便是基于本人多年的专业经验编写而成的。
本前言主要介绍本书写作的目的、内容以及本书的使用方法。
本书的写作目的
本书的写作目的非常明确:提供读者成为成功游戏设计师和原型设计师所需要的工具和知识,我尽可能地将所有的相关技能和知识都纳入了本书。与其他教程类的书籍不同的是,本书结合了游戏设计的原则与数字开发(也就是计算机编程)内容,并将两者融入互动原型中。随着性能先进同时又简便易用的游戏开发引擎的出现(比如Unity),原型构建正变得前所未有的简单。而且,学会原型开发也有助于你成为一名更优秀的游戏设计师。
第Ⅰ部分:游戏设计和纸面原型
本书的第Ⅰ部分介绍了游戏设计的不同理论和分析框架,这些内容在早年出版的一些书籍里均有涉及。本部分介绍了一种将这些理论结合并拓展延伸的方法四元分层法。四元分层法探究了与互动体验设计相关的决策内容。本部分同时含纳了不同游戏设计原则的挑战难度,阐述了纸面原型的设计过程、游戏测试和迭代设计。这些具体的信息和知识将有助于读者成为合格的设计师。
第Ⅱ部分:数字原型
本书的第Ⅱ部分介绍了编程的内容。该部分的编写基于我作为教授多年为零基础的学生授课的经验,我在课堂上也使用这些内容教导学生如何利用数字编程表达自己游戏设计的理念。如果你此前没有学过任何编程或开发的相关知识,也没有任何经验的话,那么本书第Ⅱ部分的内容就是为你量身定做的。如果你此前有过一定的编程经验的话,那么你也可以学到几个编程的小窍门,了解到一些不同的编程方法。
第Ⅲ部分:游戏原型实例和教程
本书的第Ⅲ部分围绕多种迥异的原型教程展开,你能学习到不同类型游戏的开发方法。该部分内容的主要目的是:通过展示不同类型游戏的开发方式,借此展现开发游戏原型的最佳办法,并且这些知识将为你将来的工作打下良好的基础。市场上其他图书的教程多数只介绍一种类型的教程,篇幅长达上百页。相比之下,本书的教程种类繁多,短小精悍。虽然没有那些书籍的单个教程内容详尽,但是我认为学习不同类型的教程更有助于读者将来自己准备项目开发。
第Ⅳ部分:附录
本书包含了一些很重要的附录内容,值得在这里提一下。我将书中多次提及的信息,以及我认为读者阅读后有可能想要再次查阅的内容放在了附录内,因此本书的附录并不是通篇重复的内容,也不需要读者翻阅不同章节寻找。附录A是运用Unity创建游戏项目的步骤。附录B有用的概念是篇幅最长的附录,虽然该附录的名字十分平庸,但是我认为你以后会经常来查阅这部分的知识。有用的概念里集合了我个人在游戏原型开发上经常使用的技术和策略。附录C囊括了所有有用的网站参考链接。在互联网上想要找到自己需要的信息总是很难,本附录列出的网站则是我经常使用的。
数字原型:Unity
本书提到的所有数字游戏实例均基于游戏引擎Unity 和C#语言。我在讲授数字游戏开发和互动体验课程上有十多年的经验,在我看来,目前为止Unity是学习游戏开发的最佳工具,C#语言则最适合原型设计师学习。虽然现在也有一些开发工具不需要使用者具备任何编程技术(比如Game Maker和Game Salad),但是Unity的资源包更灵活多变,并且基本上都是免费的(Unity的免费版本包含付费版本的大多数内容,本书通篇用到的Unity也都是免费版本的)。如果你真的想学习游戏编程,那么Unity是你的最佳选择。
同样,有一些编程语言要比C#语言更容易使用。过去我教过学生ActionScript和 JavaScript,但这么长时间以来C#的灵活性和强大的功能一直让我印象深刻。学习C#不仅是学习简单的编程,更是学习编程的方法。JavaScript对使用者在编程时的严谨性要求不高,可我发现这实际上会减慢开发的速度。C#在这方面则要严格得多(通过强类型变量等内容),这不仅有助于使用者成为更出色的程序员,同时也会提升编程速度(比如强类型提供代码自动完成的提示,让使用者更快速、准确的编程)。
本书面向的受众群体
市面上有很多关于游戏设计书籍,也有很多关于编程的图书。本书的宗旨就是填补游戏设计和编程之间的缺口,将两者联系起来。随着像Unity的游戏开发技术趋于成熟,游戏设计师把自己的想法转换为数字原型就变得极为重要。本书能帮助你:
如果你有兴趣致力于游戏设计领域,但是从未学过编程,那么本书是你的最佳选择。第Ⅰ部分介绍了几种不同的游戏设计理论,以及探索设计理念的办法。第Ⅱ部分教授零基础读者学习编程,了解面向对象的类体系。自从我担任大学教授以来,我的课程主要都是教授没有编程学习背景的学生学习游戏编程。我将自己的所有教学经验提炼浓缩至第Ⅱ部分内容中。第Ⅲ部分阐述了不同游戏类型的八种游戏原型开发方法。每一种方法都能快速地把概念转变成数字原型。第Ⅳ部分的附录列举了游戏开发和编程的概念,提供了扩展学习的资源。附录B有用的概念里有很多深入探究的内容,接下来的很多年里你也会经常用到这部分内容。
如果你有过编程经验,同时对游戏设计感兴趣,那么本书的第Ⅰ部分和第Ⅲ部分对你最有用。第Ⅰ部分介绍了不同的游戏设计理论和探索设计理念的办法。第二部分介绍了C#语言,以及如何在Unity环境中运用C#,你可以跳过这部分内容。如果你熟悉其他编程语言,那么你就会发现C#和C很相似,同时带有Java的一些高级功能。第Ⅲ部分阐述了不同游戏类型的八种游戏原型开发方法。用Unity开发游戏和用其他游戏引擎开发截然不同,因为许多元素都是在编程外进行设计的。本书中举出的每一种原型实例都最适合用在Unity上,并且开发速度都很快。你也应该仔细阅读附录B,该附录含纳了不同开发概念的详细信息和内容,值得你翻阅查看。
译者序
让我直截了当地告诉你,你是否需要这本书,以及为什么需要它吧。
在你手中的这本书,前半部分为关于游戏的理论框架和实用技巧,后半部分为 Unity开发实践。本书作者的思路根植于当今欧美游戏教学的主流体系,并且更注重实践。如果你与作者一样,把游戏看作一门手艺,或者看成一门武功,那么前者是内功心经,后者则是武学招式。至于学游戏的最好途径,很多游戏设计书中都提过要亲手做游戏,这恰恰是体现本书价值的地方。
如果你已经是一名富有经验的游戏设计师,本书有些入门,也许会与你已有的经验相悖,难以接受。但是如果你对游戏开发有兴趣,刚要入门或者打算入门,我可以说这本书是绝好的入口,其不仅手把手带你走过万事开头难的部分,还能防止你误入歧途。
游戏制作称得上是这世界上最复杂的事情之一,当你站在它的门口手足无措时,本书可以从理论和实践两方面帮你打下牢固的基础。就像做音乐的要用小样展示自己的水平,设计师也需要通过游戏原型表达自己的想法。而本书明智地采用了 Unity,是目前在专业性和易上手之间极其平衡的选择。
以本书为基础,你可以继续在游戏理论框架里深入探索各个细分领域,或者试试其他游戏引擎和编程语言,找到自己心仪的那一款,甚至爱上编程,最后以程序员的身份步入游戏开发这条路。总而言之,你可以把本书看作游戏设计师的自我修养,或是进入游戏行业的敲门砖。
参与本书翻译工作的有:刘晓晗、刘思嘉、文静、张一淼、王薇、张一鸣、姚待艳、杨如利、龙成、李嘉明、夏骏、姚守理、李毅、姚居济、王德贞。由于水平有限,疏漏之处在所难免,还请广大读者和专家指正。
最后,作为行业中的一员,我很欣慰地看到国内的游戏业就要结束野蛮生长,进入以质取胜的阶段。学习欧美同行这些年真金白银的积累,在我看来是在这条路上需要踏出的第一步。
刘思嘉
2017年 3月
序
我认为尽管游戏设计师和教师的外在不尽相同,但其内在是一样的,许多优秀游戏设计师拥有的技能,优秀教师也具备。你可能遇到过这样的教师,用谜题和故事让全班同学着迷;或是展示一些容易入门,但又难以精通的技能;或在不知不觉中巧妙地梳理你脑中零散的信息碎片,直到有一天可以在旁边看着你做出自己都意想不到的杰作。
我们电子游戏设计师花费大量的时间教人们玩游戏的技巧,还要让他们乐在其中。不过我们并不想让人感觉是在教他们,通常最好的游戏教学看起来像是惊奇冒险的开始。我曾有幸在屡获殊荣的顽皮狗( Naughty Dog)工作室工作了八年,以主 副设计师的身份参与制作了《神秘海域》(Uncharted)系列的三部 PS3游戏。工作室的所有人都非常喜欢《神秘海域 2:纵横四海》(Uncharted 2: Among Thieves)的开场。在玩家精神紧绷的同时,有效地教会了他们游戏的基础操作,当时我们的主角内森德雷克正在悬崖边摇摇欲坠的火车上命悬一线。
游戏设计师在创造虚拟冒险时不断重复这个过程。比如开发类似《神秘海域》系列之类的续作游戏时,设计师要格外留意玩家刚刚学会的内容。需要以好玩的方式呈现出来,让玩家能将新技巧派上用场,同时又不会难度过高,还要足够有挑战性,能让他们全神贯注。通过游戏场景、人物和物体的描绘、游戏发出的声音和游戏进行交互操作,让纯粹的新玩家做这些事情,难度可想而知。
现在我作为一名教授在大学里讲授游戏设计,真切体会到了许多游戏设计技巧对我的教学非常有帮助。另外,我还发现,教学就像设计游戏一样让人满足。所以毫不意外的,我发现本书的作者 Jeremy Gibson也在游戏设计和教学方面都有天赋,不久你就会发现。
大约在十年前,我在南加州的年度游戏开发者大会上与 Jeremy相识,并一见如故。在游戏开发方面已经颇有建树的他,因为对游戏设计的热爱与我一拍即合。如你将在书中所见,他喜欢把游戏设计当作一门手艺、一种设计实践和新兴艺术。随后 Jeremy回到了卡内基梅隆大学出色的娱乐科技中心继续研究生课程,师从 Randy Pausch博士和 Jesse Schell等梦想家。数年来,Jeremy一直和我保持联系。最终,我得知其成为 USC的游戏分部电影艺术学院互动媒体游戏部的一名教授,也是我现在任教的地方。
事实上,他在 USC任教的时候,我作为他的学生得以深入地了解他。为了取得在 USC游戏创新实验室进行研究的必要技能,我上了 Jeremy的一门课程,他让我从一个只有编程基础的 Unity新手成为熟练的 C#程序员,得以充分利用 Unity世界上最强大、易用和广泛适应性的游戏引擎之一。Jeremy的每节课程不仅有 C#和 Unity的内容,还有游戏设计和开发方面的真知灼见,从构思创意、时间管理和任务优先级,到游戏设计师利用电子表格优化游戏。修完 Jeremy的课程后我甚至希望能再来一次,我知道还能从中学到很多。
所以,听到 Jeremy在写这本书时我非常高兴,当我真正读到这本书时更是喜出望外。好消息是,Jeremy已经将所有你我想了解的内容都写在了书中。我从游戏业中的优秀游戏设计、制作和开发范例中学到了许多,并且很开心地告诉你,Jeremy已经将这些最有用的制作游戏方法汇总在了这本书中。你会读到手把手的教程及代码范例,并帮助你成为更优秀的游戏设计师和开发者。虽然书中的练习有点复杂游戏设计难度非常之高,不过 Jeremy会在一旁用浅显易懂的语言一路指引着你。
你还会在书中读到游戏历史和理论。 Jeremy不仅对游戏设计颇有研究,而且博览群书。在本书的第Ⅰ部分,你会读到他对最先进的游戏设计方法广泛深刻的分析,并且还有他从游戏设计经验中总结出的心得体会。Jeremy借助人类历史上与游戏相关的逸闻轶事支持自己的理论。他不断地让你质问自己对游戏的理解,超越主机、手柄、屏幕和音响,催生出新一代的游戏创新者。
Jeremy Gibson已离开了 USC,现任教于密歇根大学安娜堡分校。我为密歇根大学的同学们感到庆幸,他们能够在他的引领下对游戏设计进行新的诠释。那一年春天,当 Jeremy参加 USC游戏专业举办的年度 GDC校友晚宴时,满屋同学们的惊呼声变成了热烈的掌声。Jeremy Gibson为人师表的成绩可见一斑。多亏了这本书,你也有幸成为他的学生之一。
游戏设计和开发的世界瞬息万变。我全身心地爱着独一无二的它,你可以成为这个奇妙世界的一员。借助在本书中学到的知识,你可以开发各种新颖的游戏原型,也许能创立全新的游戏类型、表现风格、细分市场。全世界游戏设计的明日之星,正在家中或学校学习设计和编程。如果你好好利用这本书,跟随这里的建议并且多做练习,也许创造下一个经典游戏的就是你。
祝你好运,玩得开心!
Richard Lemarchand
USC游戏专业副教授
|
|