新書推薦:
《
(棱镜精装人文译丛)思想的假死
》
售價:NT$
290.0
《
当代精神分析新论
》
售價:NT$
430.0
《
宋初三先生集(中国思想史资料丛刊)
》
售價:NT$
990.0
《
定言命令式:康德道德哲学研究(政治哲学名著译丛)
》
售價:NT$
590.0
《
棕榈油的全球史 : 从奴隶船到购物篮
》
售價:NT$
440.0
《
简帛时代与早期中国思想世界(上下册)(王中江著作系列)
》
售價:NT$
1400.0
《
进化主义在中国的兴起(王中江著作系列)
》
售價:NT$
950.0
《
不废风雅 生活的意趣(汪曾祺风雅意趣妙文)
》
售價:NT$
280.0
|
編輯推薦: |
Unity3D是近年非常流行的一个3D游戏开发引擎,已成为手机游戏开发的主要开发工具之一,也用于计算机虚拟现实领域的模拟飞行、模拟射击、模拟驾驶等技术的开发。手机(或其他平台)的游戏逐渐高档化、复杂化,游戏角色也需要具有更高的“智能”。
本书专门讲解了Unity3D游戏人工智能开发的相关技术。书中精选了游戏AI中最必要、最实用的几项关键技术,用大量Unity3D示例代码、图片,以深入浅出的方式讲解游戏人工智能理论、设计原则和Unity3D编程实现方法。每个程序都有详细的注释并运行测试通过。
希望本书能给具备初步Unity3D游戏开发编程能力的读者在创作“更高智能”游戏角色时提供系统地、快捷地帮助。
本书精选Unity3D游戏开发中最关键、最实用的人工智能技术,用大量案例详细剖析了人工智能理论、设计原则和编程实现的方法。
每个程序都进行详细注释,并运行通过,可以跨版本运行。
写作风格深入浅出,轻松实现从理论到实践的跨越。
主要内容
Unity3D人工智能架构模型
实现AI角色的自主移动──操控行为
|
內容簡介: |
要想开发一款优秀的游戏,人工智能必不可少。本书精选了Unity3D游戏开发中最关键、最实用的几项人工智能关键技术,以实例的方式由浅入深地讲解了深奥而强大的人工智能技术、设计原则以及编程实现方法,并且对书中的每一个案例都进行了详细注释,所有实例均运行测试通过。掌握了书中的技术,可以使游戏角色具有良好的智能,大大增强游戏的可玩性!
|
目錄:
|
目 录
第1章 Unity3D人工智能架构模型
1.1 游戏AI的架构模型
1.1.1 运动层
1.1.2 决策层
1.1.3 战略层
1.1.4 AI架构模型的其他部分
1.2 FPSTPS游戏中的AI解析
1.2.1 FPSTPS中的运动层
1.2.2 FPSTPS中的决策层
1.2.3 FPSTPS中的战略层
1.2.4 FPSTPS中AI架构模型的支撑部分
第2章 实现AI角色的自主移动——操控行为
2.1 Unity3D操控行为编程的主要基类
2.1.1 将AI角色抽象成一个质点——Vehicle类
2.1.2 控制AI角色移动——AILocomotion类
2.1.3 各种操控行为的基类——Steering类
2.2 个体AI角色的操控行为
2.2.1 靠近
2.2.2 离开
2.2.3 抵达
2.2.4 追逐
2.2.5 逃避
2.2.6 随机徘徊
2.2.7 路径跟随
2.2.8 避开障碍
2.3 群体的操控行为
2.3.1 组行为
2.3.2 检测附近的AI角色
2.3.3 与群中邻居保持适当距离——分离
2.3.4 与群中邻居朝向一致——队列
2.3.5 成群聚集在一起——聚集
2.4 个体与群体的操控行为组合
2.5 几种操控行为的编程解析
2.5.1 模拟鸟群飞行
2.5.2 多AI角色障碍赛
2.5.3 实现动物迁徙中的跟随领队行为
2.5.4 排队通过狭窄通道
2.6 操控行为的快速实现——使用Unity3D开源库UnitySteer
2.7 操控行为编程的其他问题
第3章 寻找最短路径并避开障碍物——A*寻路
3.1 实现A*寻路的3种工作方式
3.1.1 基本术语
3.1.2 方式1:创建基于单元的导航图
3.1.3 方式2:创建可视点导航图
3.1.4 方式3:创建导航网格
3.2 A*寻路算法是如何工作的
3.2.1 A*寻路算法的伪代码
3.2.2 用一个实例来完全理解A*寻路算法
3.3 用A*算法实现战术寻路
3.4 A*
Pathfinding Project插件的使用
3.4.1 基本的点到点寻路
3.4.2 寻找最近的多个道具(血包、武器、药等)
3.4.3 战术寻路——避开火力范围
3.4.4 在复杂地形中寻路——多层建筑物中的跨层寻路
3.4.5 RTS中的小队寻路——用操控行为和A*寻路实现
3.4.6 使用A* Pathfinding Project插件需要注意的问题
3.5 A*寻路的适用性
第4章 AI角色对游戏世界的感知
4.1 AI角色对环境信息的感知方式
4.1.1 轮询方式
4.1.2 事件驱动方式
4.1.3 触发器
4.2 常用感知类型的实现
4.2.1 所有触发器的基类——Trigger类
4.2.2 所有感知器的基类——Sensor类
4.2.3 事件管理器
4.2.4 视觉感知
4.2.5 听觉感知
4.2.6 触觉感知
4.2.7 记忆感知
4.2.8 其他类型的感知——血包、宝物等物品的感知
4.3 AI士兵的综合感知示例
4.3.1 游戏场景设置
4.3.2 创建AI士兵角色
4.3.3 创建玩家角色
4.3.4 显示视觉范围、听觉范围和记忆信息
4.3.5 游戏运行结果
第5章 AI角色自主决策——有限状态机
5.1 有限状态机的FSM图
5.1.1 《Pac-Man(吃豆人)》游戏中红幽灵的FSM图
5.1.2 《QuakeⅡ(雷神2)》中Monster怪兽的有限状态机
5.2 方法1:用Switch语句实现有限状态机
5.2.1 游戏场景设置
5.2.2 创建子弹预置体
5.2.3 创建敌人AI角色
5.2.4 创建玩家角色及运行程序
5.3 方法2:用FSM框架实现通用的有限状态机
5.3.1 FSM框架
5.3.2 FSMState类——AI状态的基类
5.3.3 AdvancedFSM类——管理所有的状态类
5.3.4 PatrolState类——AI角色的巡逻状态
5.3.5 ChaseState类——AI角色的追逐状态
5.3.6 AttackState类——AI角色的攻击状态
5.3.7 DeadState类——AI角色的死亡状态
5.3.8 AIController类——创建有限状态机,控制AI角色的行为
5.3.9 游戏场景设置
第6章 AI角色的复杂决策——行为树
6.1 行为树技术原理
6.1.1 行为树基本术语
6.1.2 行为树中的叶节点
6.1.3 行为树中的组合节点
6.1.4 子树的复用
6.1.5 使用行为树与有限状态机的权衡
6.1.6 行为树执行时的协同(Coroutine)
6.2 行为树设计示例
6.2.1 示例1:有限状态机行为树的转换
6.2.2 示例2:带随机节点的战斗AI角色行为树
6.2.3 示例3:足球球员的AI行为树
6.3 行为树的执行流程解析——阵地军旗争夺战
6.3.1 军旗争夺战行为树
6.3.2 军旗争夺战的行为树遍历过程详解
6.4 使用React插件快速创建敌人AI士兵行为树
6.4.1 游戏场景设置
6.4.2 创建行为树
6.4.3 编写脚本实现行为树
6.4.4 创建敌人AI士兵角色
6.4.5 创建玩家角色及运行程序
第7章 AI综合示例——第三人称射击游戏
7.1 TPS游戏示例总体设计
7.1.1 TPS游戏示例概述
7.1.2 敌人AI角色行为树设计
7.2 TPS游戏示例场景的创建
7.2.1 游戏场景设置
7.2.2 隐蔽点设置
7.3 为子弹和武器编写脚本
7.3.1 创建子弹预置体
7.3.2 为M4枪编写脚本
7.4 创建玩家角色
7.5 创建第三人称相机
7.6 创建敌人AI士兵角色
7.6.1 用React插件画出行为树
7.6.2 为行为树编写代码
7.6.3 敌人AI士兵角色控制脚本
7.7 创建GUI用户界面
7.8 游戏截图
参考文献
|
|