《Unity 3D人工智能编程》PDF下载

  • 购买积分:9 如何计算积分?
  • 作  者:(美)昂·斯尤·基奥(AungSithuKyaw),(美)克利福德·彼得斯(CliffordPeters),(美)斯特·奈·斯瑞(ThetNaingSwe)著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2015
  • ISBN:9787111503897
  • 页数:198 页
图书介绍:本书重点关注如何将人工智能技术应用于Unity3D游戏项目。书中从有限状态机开始,接着探讨了如何为你的游戏增加一些随机性,让游戏变得更加难以预测,更加有趣。如何在一个游戏中加入一个感应系统让游戏中的角色可以感知周围的环境,同时使得代码不会随着项目规模的扩大变得难以维护。如何将群组行为用于一组移动的对象,这样可以有效地控制一组移动对象的行为。然后探讨了如何让人工智能角色跟随一条规定的路径进行移动,在此基础上,讲述了如何实现A*寻路算法,以对游戏引擎的寻路原理有更深一层的理解。紧接着介绍了如何在Unity3D中使用导航网格方便快捷地实现寻路。然后讲解了当游戏规模变大,有限状态机的代码变得冗长,难以维护时,使用行为树来解决这个问题,并讲解了如何在Unity3D中使用Behave这个免费插件来实现行为树。最后,用一个车辆战斗游戏将本书中提到的大多数知识点融会贯通,应用于最后这个规模稍大的游戏中。

第1章 人工智能导论 1

1.1 人工智能 1

1.2 游戏中的人工智能 2

1.3 人工智能技术 3

1.3.1 有限状态机 3

1.3.2 人工智能中的随机性和概率 5

1.3.3 感应器系统 6

1.3.4 群组、蜂拥和羊群效应 7

1.3.5 路径跟随和引导 8

1.3.6 A*寻路算法 9

1.3.7 导航网格 16

1.3.8 行为树 18

1.3.9 运动 20

1.3.10 Dijkstra算法 23

1.4 本章小结 23

第2章 有限状态机 24

2.1 玩家的坦克 24

2.1.1 PlayerTankController类 25

2.1.2 初始化 26

2.2 子弹类 29

2.3 设置航点 31

2.4 抽象有限状态机类 32

2.5 敌方坦克的人工智能 34

2.5.1 巡逻状态 36

2.5.2 追逐状态 38

2.5.3 攻击状态 38

2.5.4 死亡状态 40

2.6 使用有限状态机框架 42

2.6.1 AdvanceFSM类 42

2.6.2 FSMState类 43

2.6.3 状态类 44

2.6.4 NPCTankController类 46

2.7 本章小结 48

第3章 随机性和概率 49

3.1 随机性 50

3.2 概率的定义 52

3.2.1 独立与关联事件 53

3.2.2 条件概率 53

3.3 人物个性 56

3.4 有限状态机和概率 57

3.5 动态人工智能 59

3.6 示例老虎机 60

3.6.1 随机老虎机 60

3.6.2 加权概率 63

3.7 本章小结 68

第4章 感应器的实现 70

4.1 基本的感觉系统 71

4.2 场景设置 72

4.3 玩家的坦克与切面 73

4.3.1 玩家的坦克 74

4.3.2 切面 75

4.4 人工智能角色 76

4.4.1 感观 77

4.4.2 视觉 78

4.4.3 触觉 80

4.5 测试 82

4.6 本章小结 83

第5章 群组行为 84

5.1 岛屿示例中的群组行为 84

5.1.1 个体的行为 85

5.1.2 控制器 90

5.2 替代实现 92

5.3 本章小结 99

第6章 路径跟随和引导行为 100

6.1 跟随一条路径 100

6.1.1 路径脚本 102

6.1.2 路径跟随 103

6.2 避开障碍物 106

6.2.1 添加定制图层 107

6.2.2 避开障碍 108

6.3 本章小结 113

第7章 A*寻路算法 114

7.1 回顾A*寻路算法 114

7.2 实现 116

7.2.1 Node 116

7.2.2 PriorityQueue 117

7.2.3 GridManager 118

7.2.4 AStar 123

7.2.5 TestCode类 126

7.3 场景设置 128

7.4 测试 131

7.5 本章小结 132

第8章 导航网格 133

8.1 简介 134

8.2 设置地图 134

8.2.1 Navigation Static 135

8.2.2 烘焙导航网格 135

8.2.3 导航网格代理 136

8.3 有斜坡的场景 139

8.4 NavMeshLayers 141

8.5 分离网格链接 144

8.5.1 生成分离网格链接 145

8.5.2 手动生成分离网格链接 146

8.6 本章小结 148

第9章 行为树 149

9.1 Behave插件 149

9.2 工作流 151

9.3 行为节点 153

9.4 与脚本的接口 155

9.5 装饰节点 158

9.6 Behave调试器 160

9.7 顺序节点 160

9.8 探索Behave的结果 162

9.9 选择节点 163

9.10 优先级选择节点 166

9.11 并行节点 168

9.12 引用 169

9.13 机器人与外星人项目 170

9.14 本章小结 173

第10章 融会贯通 174

10.1 场景设置 175

10.2 车辆 177

10.2.1 玩家控制的车辆 178

10.2.2 人工智能车辆控制器 180

10.2.3 有限状态机 182

10.3 武器 187

10.3.1 枪 187

10.3.2 子弹 189

10.3.3 发射器 191

10.3.4 导弹 193

10.4 本章小结 195