暂无商品咨询信息 [发表商品咨询]
本书结合作者多年的开发经验,从物理、动画、主角、关卡等多个层面深入解析动作游戏开发的各种难点问题,并详细剖析3个经典实战案例和1个游戏Demo的开发。本书尽可能避开动作游戏开发中的简单问题,把重点放在难点问题剖析上,从而帮助读者深入理解动作游戏开发的原理与核心知识。
本书共11章,分为3篇。第1篇开发准备,主要介绍动作游戏的主流类型、Unity3D引擎的基本知识和动作游戏开发的前期准备。第2篇核心模块详解,主要介绍动作游戏的物理系统、动画系统、战斗系统、主角系统、关卡系统、敌人AI系统等模块的设计与开发,以及相机、Cutscene过场动画、输入管理、IK与音频管理等其他模块的设计与开发。第3篇项目案例实战,首先详细剖析《忍者龙剑传Σ2》《君临都市》《战神3》三个动作游戏案例,然后详解一款Roguelike风格的动作游戏Demo开发。
本书内容丰富,知识体系完整,适合所有想学习动作游戏开发的人员阅读,尤其适合从事动作游戏开发的程序员、Unity3D工程师和Steam游戏从业人员阅读,还适合作为大中专院校和培训机构的教材。
第1篇 开发准备
第1章 概述
1.1 本书的侧重点及目标
1.2 动作游戏的主流类型简介
1.2.1 传统动作游戏
1.2.2 Roguelike类动作游戏
1.2.3 魂类动作游戏
1.3 Unity3D引擎简介
1.3.1 Unity3D引擎的发展历程
1.3.2 选用合适的引擎版本
第2章 动作游戏开发前期准备
2.1 预备知识
2.1.1 使用协程
2.1.2 使用ScriptableObject
2.1.3 理解LayerMask
2.1.4 消息模块的设计
2.1.5 功能开关与锁的设计
2.1.6 活用插值公式
2.1.7 关注项目中的GC问题
2.2 Unity3D引擎及C语言新功能
2.2.1 C6.0至C7.3新功能简介
2.2.2 Unity3D引擎部分新功能简介
2.3 3D游戏开发必备的数学知识
2.3.1 向量加减
2.3.2 点乘
2.3.3 叉乘
2.3.4 投影
2.3.5 四元数
2.4 其他开发工具准备
2.4.1 控制台工具的编写
2.4.2 常量生成器
2.4.3 关联Excel配置数据
2.4.4 Level分组打包工具
2.4.5 项目目录结构建议
2.4.6 项目的程序流程结构建议
第2篇 核心模块详解
第3章 物理系统详解
3.1 物理系统基本内容梳理
3.1.1 系统参数设置
3.1.2 FixedUpdate更新频率
3.1.3 Rigidbody参数简介
3.1.4 物理材质设置
3.2 常见问题
3.2.1 物理步的理解误区
3.2.2 重叠与挤出问题
3.2.3 地面检测逻辑的处理
3.2.4 传送平台逻辑的处理
3.2.5 踩头问题及其解决方法
3.2.6 动画根运动的物理问题
3.3 为动作游戏定制碰撞系统
3.3.1 OBB碰撞检测简介
3.3.2 Box与Box相交检测
3.3.3 Box与Sphere相交检测
3.3.4 Sphere与Sphere相交检测
3.3.5 不同形状的边界点获取
3.3.6 总结
第4章 Mecanim动画系统详解
4.1 Mecanim动画系统的基础功能
4.1.1 动画状态机简介
4.1.2 状态过渡机制
4.1.3 动画重写控制器
4.1.4 混合树
4.1.5 人形动画与IK
4.1.6 模型导入面板参数
4.1.7 SMB脚本
4.2 应用与扩展
4.2.1 编写混合树剥离工具
4.2.2 碰撞SMB脚本
4.2.3 监听输入帧与混合帧
4.2.4 扩展多重Tag支持
第5章 战斗系统详解
5.1 角色模块
5.1.1 角色控制器与刚体
5.1.2 Motor组件设计1
5.1.3 Motor组件设计2
5.1.4 动画事件处理
5.2 战斗系统设计
5.2.1 伤害判定框细节思考
5.2.2 传递Instigator
5.2.3 基础战斗逻辑编写
5.2.4 编写伤害逻辑
5.2.5 编写僵直度逻辑
5.2.6 编写浮空逻辑
5.2.7 编写预警逻辑
第6章 主角系统详解
6.1 基础模块设计
6.1.1 有限状态机简介
6.1.2 编写有限状态机
6.1.3 设计插槽挂接点
6.1.4 实现指令监听功能
6.1.5 封装角色基类
6.1.6 技能系统
6.1.7 编写主角类基础结构
6.2 基础要素
6.2.1 同类游戏的对比
6.2.2 逻辑编写前的准备工作
6.2.3 移动逻辑的编写
6.2.4 跳跃逻辑的编写
6.2.5 多段跳跃逻辑的编写
6.2.6 攻击逻辑的编写
6.2.7 连招逻辑的编写
6.2.8 受击与死亡逻辑的编写
6.2.9 空中攻击与受击逻辑的编写
6.2.10 翻滚逻辑的编写
6.2.11 格挡逻辑的编写
6.3 效果与表现
6.3.1 增加Twist骨骼
6.3.2 刀光拖尾效果制作
6.3.3 顿帧效果处理
6.3.4 布娃娃效果制作
第7章 关卡设计详解
7.1 关卡设计的前期考量
7.1.1 从Graybox说起
7.1.2 规划层级结构
7.1.3 模型的导出与调试
7.2 深入解析开发阶段
7.2.1 SpawnPoint的使用
7.2.2 扩展SpawnPoint
7.2.3 对象池的编写
7.2.4 关卡模块的序列化
7.2.5 战斗壁障的实现
7.3 光照与烘焙
7.3.1 不同GI类型的选择
7.3.2 预计算光照的使用
7.3.3 光照探针的使用
7.3.4 反射探针简介
7.3.5 借助LPPV优化烘焙
第8章 敌人AI设计详解
8.1 开发基础
8.1.1 敌人AI设计简介
8.1.2 导航网格功能简介
8.1.3 Behavior Designer插件简介
8.1.4 Visual Scripting工具简介
8.2 开发进阶
8.2.1 使用协程开发AI程序
8.2.2 处理敌人体积过大的问题
8.2.3 处理移动逻辑
8.2.4 可控制随机行为
8.2.5 快速获取角色的8个方向
8.2.6 锁定玩家与攻击逻辑
8.2.7 使用导航网格查询接口
8.2.8 实现EQS功能
8.2.9 获取场景绑定信息
第9章 其他模块详解
9.1 相机
9.1.1 常见的相机模式分类
9.1.2 第三人称相机的实现
9.1.3 滑轨相机的实现
9.1.4 相机震屏实现
9.2 Cutscene过场动画
9.2.1 不同类型的Cutscene简介
9.2.2 使用Timeline
9.2.3 使用脚本过场动画
9.3 输入、IK与音频管理
9.3.1 InControl插件的使用
9.3.2 Final-IK插件的使用
9.3.3 音频管理
第3篇 项目案例实战
第10章 典型案例剖析
10.1 《忍者龙剑传Σ2》案例剖析
10.1.1 断肢效果的再实现
10.1.2 流血喷溅效果的再实现
10.1.3 角色残影效果的再实现
10.2 《君临都市》案例剖析
10.2.1 通用动作方案的设计
10.2.2 组合攻击的再实现
10.3 《战神3》案例剖析
10.3.1 吸魂效果的再实现
10.3.2 链刃伸缩效果的再实现
10.3.3 赫利俄斯照射的再实现
第11章 Roguelike游戏Demo设计
11.1 前期规划
11.1.1 确立3C
11.1.2 资源准备
11.1.3 项目配置
11.1.4 梳理游戏流程
11.1.5 依赖模块清单
11.2 功能实现与整合
11.2.1 游戏逻辑
11.2.2 房间生成逻辑
11.2.3 整合主角逻辑
11.2.4 处理敌人逻辑
11.3 构建游戏
11.3.1 配置房间预制体
11.3.2 回顾与总结
周尚宣,笔名与网络ID为Hont。主机与动作游戏发烧友,独立游戏开发者,Unity3D工程师。自2014年开始,一直从事技术博客文章的创作。曾经先后参与了手游、VR和Steam端游等不同类型游戏项目的开发与上线,积累了大量的开发经验。工作之余喜爱钻研动作游戏的各项技术并加以实践,将其用于商业游戏、独立游戏和个人开发的游戏项目之中。
基本信息 | |
---|---|
出版社 | 清华大学出版社 |
ISBN | 9787302692966 |
条码 | 9787302692966 |
编者 | 周尚宣 |
译者 | -- |
出版年月 | 2018-01-01 00:00:00.0 |
开本 | 其他 |
装帧 | 平装 |
页数 | 0 |
字数 | 420 |
版次 | 1 |
印次 | 1 |
纸张 |
暂无商品评论信息 [发表商品评论]
暂无商品咨询信息 [发表商品咨询]