书籍详情
游戏设计、原型与开发:基于Unity与C#从构思到实现(第2版)
作者:[美] Jeremy Gibson Bond(杰里米・吉布森・邦德) 著,姚待艳 译
出版社:电子工业出版社
出版时间:2020-06-01
ISBN:9787121389818
定价:¥188.00
购买这本书可以去
内容简介
这是一本将游戏设计理论、原型开发方法以及编程技术巧妙结合在一起的书,目的是填补游戏设计与编程开发之间的缺口,将两者联系起来。随着Unity 游戏开发技术日趋成熟,游戏设计师把自己的想法转换为数字原型已变得极为重要。书中汇集了国际知名游戏设计专家――Jeremy Gibson Bond 在北美地区颇具盛名的游戏设计课程的教学经验,整合了成为成功游戏设计师和原型设计师所需要的相关技能与知识,能够有效帮助读者熟练运用Unity 进行原型开发与游戏设计,并且借助C#实行游戏编程。游戏制作是一门手艺,是很多人的梦想,但其创意、设计、原型和开发等重重困难也时常令人望而却步。当你徘徊在游戏制作的门前手足无措时,这本书可以从理论和实践两方面帮你打下牢固的基础。翻开这本书,跟随其中的指引冲破阻碍,也许创造下一个经典游戏的就是你!
作者简介
Jeremy Gibson Bond:密歇根州立大学从事游戏设计与开发教学的教授,负责的课程一直在世界范围内享有盛名。2009年至2013年,他在南加州大学电影艺术学院任教,讲授的游戏设计和原型开发课程在北美地区名列前茅。他是IndieCade独立游戏展会的教育和发展主席,曾多次在游戏开发者大会上发表演讲。他曾就职于Electronic Arts、Maxis和Pogo.com等公司,拥有卡内基梅隆大学的娱乐技术专业硕士学位。本书译者均为计算机类、游戏类图书资深译者,其中还有游戏行业的专业人士,曾参与过众多大型游戏项目的开发。
目录
第I部分 游戏设计和纸面原型
第1章 像设计师一样思考
1.1 你是一名游戏设计师
1.2 Bartok:游戏练习
1.3 游戏的定义
1.4 本章小结
第2章 游戏分析框架
2.1 游戏学的常用框架
2.2 MDA:机制、动态和美学
2.3 形式、戏剧和动态元素
2.4 四元法
2.5 本章小结
第3章 分层四元法
3.1 内嵌层
3.2 动态层
3.3 文化层
3.4 设计师的责任
3.5 本章小结
第4章 内嵌层
4.1 机制内嵌
4.2 美学内嵌
4.3 叙事内嵌
4.4 技术内嵌
4.5 本章小结
第5章 动态层
5.1 玩家的角色
5.2 涌现
5.3 动态机制
5.4 动态美学
5.5 动态叙事
5.6 涌现叙事
5.7 动态技术
5.8 本章小结
第6章 文化层
6.1 游戏之外
6.2 文化机制
6.3 美学文化
6.4 叙事文化
6.5 技术文化
6.6 授权的跨媒体不属于文化层
6.7 游戏的文化影响
6.8 本章小结
第7章 像设计师一样工作
7.1 迭代设计
7.2 创新
7.3 头脑风暴与构思
7.4 改变你的想法
7.5 规划游戏的范围大小
7.6 本章小结
第8章 设计目标
8.1 设计目标:一个待完成的清单
8.2 以设计为中心的目标
8.3 以玩家为中心的目标
8.4 本章小结
第9章 纸面原型
9.1 纸面原型的优势
9.2 纸面原型工具
9.3 纸面原型的示例
9.4 纸面原型的优点
9.5 纸面原型的缺点
9.6 本章小结
第10章 游戏测试
10.1 为什么要做游戏测试
10.2 成为出色的试玩者
10.3 试玩者圈子
10.4 游戏测试方法
10.5 其他重要的测试方法
10.6 本章小结
第11章 数学和游戏平衡
11.1 游戏平衡的意义
11.2 表格的重要性
11.3 用表格分析骰子的概率
11.4 概率
11.5 桌游中的乱数产生器
11.6 权重分配
11.7 排列
11.8 使用Google Sheets调整武器平衡性
11.9 正负反馈
11.10 本章小结
第12章 指引玩家
12.1 直接指引
12.2 间接指引
12.3 七种间接指引的方法
12.4 介绍新技能和新概念
12.5 本章小结
第13章 谜题设计
13.1 Scott Kim与谜题设计
13.2 动作解谜游戏的几种类型
13.3 本章小结
第14章 敏捷思维
14.1 敏捷软件开发宣言
14.2 Scrum方法论
14.3 本章小结
第15章 电子游戏产业
15.1 关于游戏产业
15.2 游戏教育
15.3 走进产业中去
15.4 马上开始做游戏
15.5 本章小结
第II部分 数字原型
第16章 数字化系统中的思维
16.1 棋类游戏中的系统思维
16.2 简单命令练习
16.3 游戏分析:《拾苹果》
16.4 本章小结
第17章 Unity开发环境简介
17.1 下载Unity软件
17.2 开发环境简介
17.3 首次运行Unity软件
17.4 设置Unity的窗口布局
17.5 熟悉Unity界面
17.6 本章小结
第18章 C#编程语言简介
18.1 理解C#的特性
18.2 阅读和理解C#语法
18.3 本章小结
第19章 Hello World:你的首个程序
19.1 创建新项目
19.2 新建C#脚本
19.3 让事情更有趣
19.4 本章小结
第20章 变量和组件
20.1 变量
20.2 C#中的强类型变量
20.3 重要的C#变量类型
20.4 变量的作用域
20.5 命名惯例
20.6 Unity中的重要变量类型
20.7 Unity GameObject和组件
20.8 本章小结
第21章 布尔运算和比较运算符
21.1 布尔值
21.2 比较运算符
21.3 条件语句
21.4 本章小结
第22章 循环语句
22.1 循环语句的种类
22.2 创建项目
22.3 while循环
22.4 do…while循环
22.5 for循环
22.6 foreach循环
22.7 循环中的跳转语句
22.8 本章小结
第23章 C#中的集合
23.1 C#集合简介
23.2 使用Generic Collections
23.3 List
23.4 字典
23.5 数组
23.6 多维数组
23.7 交错数组
23.8 应该使用数组还是List
23.9 本章小结
第24章 函数与参数
24.1 创建函数示例的项目
24.2 函数的定义
24.3 函数的形式参数和实际参数
24.4 函数的返回值
24.5 使用合适的函数名称
24.6 什么情况下应该使用函数
24.7 函数重载
24.8 可选参数
24.9 params关键字
24.10 递归函数
24.11 本章小结
第25章 代码调试
25.1 如何开始调试
25.2 使用调试器逐语句运行代码
25.3 本章小结
第26章 类
26.1 理解类
26.2 类的继承
26.3 本章小结
第27章 面向对象思维
27.1 理解面向对象
27.2 面向对象的Boids实现方法
27.3 本章小结
第III部分 游戏原型实例和教程
第28章 游戏原型1:《拾苹果》
28.1 电子游戏原型的目的
28.2 准备工作
28.3 编写《拾苹果》游戏原型的代码
28.4 图形用户界面(GUI)和游戏管理
28.5 本章小结
第29章 游戏原型2:《爆破任务》
29.1 准备工作:原型2
29.2 游戏原型概念
29.3 绘图资源
29.4 编写游戏原型的代码
29.5 本章小结
第30章 游戏原型3:《太空射击》
30.1 准备工作:原型3
30.2 设置场景
30.3 创建主角飞船
30.4 添加敌机
30.5 随机生成敌机
30.6 设置标签、图层和物理规则
30.7 使敌机可以消灭主角飞船
30.8 重新开始游戏
30.9 射击
30.10 本章小结
第31章 游戏原型3.5:《太空射击》升级版
31.1 准备工作:原型3.5
31.2 为其他敌机编程
31.3 回顾射击
31.4 显示敌机受损
31.5 添加升级道具和射击武器
31.6 让敌机可以掉落升级道具
31.7 Enemy_4――更复杂的敌机
31.8 添加滚动星空背景
31.9 本章小结
第32章 游戏原型4:《矿工接龙》
32.1 准备工作:原型4
32.2 Build设置
32.3 将图片导入为Sprite
32.4 用Sprite制作纸牌
32.5 《矿工接龙》游戏
32.6 在代码中实现《矿工接龙》游戏
32.7 实现游戏逻辑
32.8 为游戏添加得分机制
32.9 为游戏添加一些设计
32.10 本章小结
第33章 游戏原型5:Bartok
33.1 准备工作:原型5
33.2 编译设置
33.3 Bartok编程
33.4 构建WebGL
33.5 本章小结
第34章 游戏原型6:Word Game
34.1 准备工作:Word Game原型6
34.2 关于Word Game
34.3 解析Word List
34.4 创建游戏
34.5 屏幕布局
34.6 添加交互
34.7 添加计分
34.8 添加动画
34.9 添加色彩
34.10 本章小结
第35章 游戏原型7:Dungeon Delver
35.1 游戏概览
35.2 准备工作:原型7
35.3 设置摄像机
35.4 理解地牢数据
35.5 添加主角
35.6 为Dray添加攻击动画
35.7 Dray的剑
35.8 敌人:骷髅
35.9 InRoom脚本
35.10 按图块碰撞
35.11 与网格对齐
35.12 从一个房间移动到另一个房间
35.13 让摄像机跟随Dray
35.14 打开门锁
35.15 为钥匙计数器和生命值添加GUI
35.16 使敌人攻击Dray
35.17 使Dray的攻击能够伤害敌人
35.18 拾起物品
35.19 敌人死亡时掉落物品
35.20 实现抓钩
35.21 新的地牢――Hat
35.22 Delver Level编辑器
35.23 本章小结
第IV部分 附录
附录A 项目创建标准流程
A.1 建立新项目
A.2 场景编码就绪
附录B 实用概念
B.1 C#和Unity代码概念
B.2 数学概念
B.3 插值
B.4 角色扮演游戏
B.5 用户接口概念
第1章 像设计师一样思考
1.1 你是一名游戏设计师
1.2 Bartok:游戏练习
1.3 游戏的定义
1.4 本章小结
第2章 游戏分析框架
2.1 游戏学的常用框架
2.2 MDA:机制、动态和美学
2.3 形式、戏剧和动态元素
2.4 四元法
2.5 本章小结
第3章 分层四元法
3.1 内嵌层
3.2 动态层
3.3 文化层
3.4 设计师的责任
3.5 本章小结
第4章 内嵌层
4.1 机制内嵌
4.2 美学内嵌
4.3 叙事内嵌
4.4 技术内嵌
4.5 本章小结
第5章 动态层
5.1 玩家的角色
5.2 涌现
5.3 动态机制
5.4 动态美学
5.5 动态叙事
5.6 涌现叙事
5.7 动态技术
5.8 本章小结
第6章 文化层
6.1 游戏之外
6.2 文化机制
6.3 美学文化
6.4 叙事文化
6.5 技术文化
6.6 授权的跨媒体不属于文化层
6.7 游戏的文化影响
6.8 本章小结
第7章 像设计师一样工作
7.1 迭代设计
7.2 创新
7.3 头脑风暴与构思
7.4 改变你的想法
7.5 规划游戏的范围大小
7.6 本章小结
第8章 设计目标
8.1 设计目标:一个待完成的清单
8.2 以设计为中心的目标
8.3 以玩家为中心的目标
8.4 本章小结
第9章 纸面原型
9.1 纸面原型的优势
9.2 纸面原型工具
9.3 纸面原型的示例
9.4 纸面原型的优点
9.5 纸面原型的缺点
9.6 本章小结
第10章 游戏测试
10.1 为什么要做游戏测试
10.2 成为出色的试玩者
10.3 试玩者圈子
10.4 游戏测试方法
10.5 其他重要的测试方法
10.6 本章小结
第11章 数学和游戏平衡
11.1 游戏平衡的意义
11.2 表格的重要性
11.3 用表格分析骰子的概率
11.4 概率
11.5 桌游中的乱数产生器
11.6 权重分配
11.7 排列
11.8 使用Google Sheets调整武器平衡性
11.9 正负反馈
11.10 本章小结
第12章 指引玩家
12.1 直接指引
12.2 间接指引
12.3 七种间接指引的方法
12.4 介绍新技能和新概念
12.5 本章小结
第13章 谜题设计
13.1 Scott Kim与谜题设计
13.2 动作解谜游戏的几种类型
13.3 本章小结
第14章 敏捷思维
14.1 敏捷软件开发宣言
14.2 Scrum方法论
14.3 本章小结
第15章 电子游戏产业
15.1 关于游戏产业
15.2 游戏教育
15.3 走进产业中去
15.4 马上开始做游戏
15.5 本章小结
第II部分 数字原型
第16章 数字化系统中的思维
16.1 棋类游戏中的系统思维
16.2 简单命令练习
16.3 游戏分析:《拾苹果》
16.4 本章小结
第17章 Unity开发环境简介
17.1 下载Unity软件
17.2 开发环境简介
17.3 首次运行Unity软件
17.4 设置Unity的窗口布局
17.5 熟悉Unity界面
17.6 本章小结
第18章 C#编程语言简介
18.1 理解C#的特性
18.2 阅读和理解C#语法
18.3 本章小结
第19章 Hello World:你的首个程序
19.1 创建新项目
19.2 新建C#脚本
19.3 让事情更有趣
19.4 本章小结
第20章 变量和组件
20.1 变量
20.2 C#中的强类型变量
20.3 重要的C#变量类型
20.4 变量的作用域
20.5 命名惯例
20.6 Unity中的重要变量类型
20.7 Unity GameObject和组件
20.8 本章小结
第21章 布尔运算和比较运算符
21.1 布尔值
21.2 比较运算符
21.3 条件语句
21.4 本章小结
第22章 循环语句
22.1 循环语句的种类
22.2 创建项目
22.3 while循环
22.4 do…while循环
22.5 for循环
22.6 foreach循环
22.7 循环中的跳转语句
22.8 本章小结
第23章 C#中的集合
23.1 C#集合简介
23.2 使用Generic Collections
23.3 List
23.4 字典
23.5 数组
23.6 多维数组
23.7 交错数组
23.8 应该使用数组还是List
23.9 本章小结
第24章 函数与参数
24.1 创建函数示例的项目
24.2 函数的定义
24.3 函数的形式参数和实际参数
24.4 函数的返回值
24.5 使用合适的函数名称
24.6 什么情况下应该使用函数
24.7 函数重载
24.8 可选参数
24.9 params关键字
24.10 递归函数
24.11 本章小结
第25章 代码调试
25.1 如何开始调试
25.2 使用调试器逐语句运行代码
25.3 本章小结
第26章 类
26.1 理解类
26.2 类的继承
26.3 本章小结
第27章 面向对象思维
27.1 理解面向对象
27.2 面向对象的Boids实现方法
27.3 本章小结
第III部分 游戏原型实例和教程
第28章 游戏原型1:《拾苹果》
28.1 电子游戏原型的目的
28.2 准备工作
28.3 编写《拾苹果》游戏原型的代码
28.4 图形用户界面(GUI)和游戏管理
28.5 本章小结
第29章 游戏原型2:《爆破任务》
29.1 准备工作:原型2
29.2 游戏原型概念
29.3 绘图资源
29.4 编写游戏原型的代码
29.5 本章小结
第30章 游戏原型3:《太空射击》
30.1 准备工作:原型3
30.2 设置场景
30.3 创建主角飞船
30.4 添加敌机
30.5 随机生成敌机
30.6 设置标签、图层和物理规则
30.7 使敌机可以消灭主角飞船
30.8 重新开始游戏
30.9 射击
30.10 本章小结
第31章 游戏原型3.5:《太空射击》升级版
31.1 准备工作:原型3.5
31.2 为其他敌机编程
31.3 回顾射击
31.4 显示敌机受损
31.5 添加升级道具和射击武器
31.6 让敌机可以掉落升级道具
31.7 Enemy_4――更复杂的敌机
31.8 添加滚动星空背景
31.9 本章小结
第32章 游戏原型4:《矿工接龙》
32.1 准备工作:原型4
32.2 Build设置
32.3 将图片导入为Sprite
32.4 用Sprite制作纸牌
32.5 《矿工接龙》游戏
32.6 在代码中实现《矿工接龙》游戏
32.7 实现游戏逻辑
32.8 为游戏添加得分机制
32.9 为游戏添加一些设计
32.10 本章小结
第33章 游戏原型5:Bartok
33.1 准备工作:原型5
33.2 编译设置
33.3 Bartok编程
33.4 构建WebGL
33.5 本章小结
第34章 游戏原型6:Word Game
34.1 准备工作:Word Game原型6
34.2 关于Word Game
34.3 解析Word List
34.4 创建游戏
34.5 屏幕布局
34.6 添加交互
34.7 添加计分
34.8 添加动画
34.9 添加色彩
34.10 本章小结
第35章 游戏原型7:Dungeon Delver
35.1 游戏概览
35.2 准备工作:原型7
35.3 设置摄像机
35.4 理解地牢数据
35.5 添加主角
35.6 为Dray添加攻击动画
35.7 Dray的剑
35.8 敌人:骷髅
35.9 InRoom脚本
35.10 按图块碰撞
35.11 与网格对齐
35.12 从一个房间移动到另一个房间
35.13 让摄像机跟随Dray
35.14 打开门锁
35.15 为钥匙计数器和生命值添加GUI
35.16 使敌人攻击Dray
35.17 使Dray的攻击能够伤害敌人
35.18 拾起物品
35.19 敌人死亡时掉落物品
35.20 实现抓钩
35.21 新的地牢――Hat
35.22 Delver Level编辑器
35.23 本章小结
第IV部分 附录
附录A 项目创建标准流程
A.1 建立新项目
A.2 场景编码就绪
附录B 实用概念
B.1 C#和Unity代码概念
B.2 数学概念
B.3 插值
B.4 角色扮演游戏
B.5 用户接口概念
猜您喜欢