注册 登录 进入教材巡展
#
  • #

出版时间:2022-04

出版社:重庆大学电子音像出版社

以下为《Unity3d高级应用》的配套数字资源,这些资源在您购买图书后将免费附送给您:
  • 重庆大学电子音像出版社
  • 9787894466051
  • 1版
  • 443914
  • 68256369-7
  • 平装
  • 16开
  • 2022-04
  • 工学
  • 计算机科学与技术
  • 计算机类
  • 高职
内容简介
本书主要讲解了动画系统Mecanim,物理系统,UI实战技巧,U3D特效组件,Shuriken粒子系统,游戏AI,网络格式,全局光照GI,后期处理,AssetBundle,代码热更,性能分析与优化,自定义场景绘制和窗体绘制。通过本书的学习,学生能掌握Unity3D高级应用的知识和实际应用。
目录
目录
第1章 动画系统Mecanim1 1
1.1 Mecanim简介 3
1.2 动画分解 4
1.2.1 动画资源设置 4
1.2.2 动画片段剪辑 5
1.2.3 动画相对偏移 6
1.2.4 动画曲线 8
1.2.5 动画事件 9
1.2.6 动画遮罩 10
1.2.7 自定义根骨骼 11
1.2.8 导入信息 11
1.3 Avatar详解 11
1.3.1 Avatar简述 11
1.3.2 创建Avatar 11
1.3.3 配置Avatar 14
1.3.4 设置Muscle 17
1.3.5 人型动画重定向 18
1.4 动画状态机概述 19

第2章 动画系统Mecanim2 22
2.1 动画控制器 24
2.1.1 创建动画控制器 24
2.1.2 动画控制器重载 25
2.1.3 动画控制器应用 26
2.2 动画控制器视图 27
2.3 Avatar动画层 27
2.3.1 什么是动画层 27
2.3.2 设定动画层 28
2.4 动画状态机 29
2.4.1 状态机基础 29
2.4.2 状态创建 29
2.4.3 状态属性 31
2.4.4 状态切换 32
2.4.5 子状态机 37
2.5 动画混合 38
2.5.1 混合树简介 38
2.5.2 创建混合树 39
2.5.3 1D混合 39
2.5.4 2D混合 42
2.6 反向动力IK 44
2.6.1 反向动力简介 44
2.6.2 如何使用IK 44
2.6.3 抓取物体IK 46

第3章 物理系统 49
3.1 物理刚体 51
3.1.1 Kinematic Rigidbodies 运动学刚体 51
3.1.2 刚体属性 51
3.2 角色控制器 53
3.3 物理材质 54
3.4 交互布料 56
3.4.1 U3D布料组件 56
3.4.2 自定义弹簧骨骼 59
3.5 物理关节 63
3.5.1 铰链关节 Hinge Joint 63
3.5.2 固定关节 Fixed Joint 65
3.5.3 弹簧关节Spring Joint 66
3.5.4 角色关节Character Joint 67
3.5.5 自由链接Configurable Joint 69
3.6 布娃娃系统 74

第4章 UI实战技巧1 78
4.1 渲染纹理RenderTexture 80
4.1.1 渲染纹理创建 80
4.1.2 渲染纹理应用 83
4.2 灰度图 84
4.2.1 灰度图原理 84
4.2.2 U3D灰度图制作 84
4.3 纹理动画 86
4.3.1 材质对象控制 86
4.3.2 代码控制 87
4.4 艺术字体 87
4.4.1 自定义字体 87
4.4.2 多对象精灵 91
4.5 UI事件系统 91
4.5.1 编辑器中操作 92
4.5.2 动态添加事件 94
4.5.3 继承接口实现 95

第5章 UI实战技巧2 99
5.1 UGUI 层次结构 101
5.2 UGUI 场景加载显示 105
5.3 UGUI 自定义UI绘制 107
5.4 UGUI 绘制多边形 109
5.5 UGUI 图文混排 112

第6章 U3D特效组件 124
6.1 线渲染LineRender 126
6.2 拖尾效果TrailRender 130
6.3 投影效果Projector 132
6.4 镜头光斑Lens Flare 135
6.5 光晕效果Halo 138

第7章 Shuriken粒子系统 140
7.1 Shuriken粒子系统简介 142
7.2 初始化模块 143
7.3 发射模式 144
7.4 形状模块 145
7.4.1 Sphere: 球型 145
7.4.2 Hemisphere: 半球体类型 146
7.4.3 Cone:圆锥类型 147
7.4.4 Box: 盒子类型 147
7.4.5 Mesh: 网格发射类型 148
7.4.6 Mesh Renderer: 网格渲染发射类型 148
7.4.7 Skinned Mesh Renderer: 骨骼蒙皮发射类型 149
7.4.8 Circle:圆形 149
7.4.9 Edge: 线段类型 150
7.5 渲染器模块 150
7.6 粒子系统曲线编辑器 152
7.7 速率周期模块 152
7.8 速率限制周期模块 153
7.9 速率继承周期模块 153
7.10 推力周期模块 154
7.11 颜色周期模块 154
7.12 颜色速度模块 155
7.13 缩放周期模块 156
7.14 缩放速度模块 156
7.15 旋转周期模块 157
7.16 旋转速度模块 157
7.17 扩展推力模块 158
7.18 碰撞模块 158
7.19 触发器模块 159
7.20 子粒子发射模块 160
7.21 纹理动画模块 160

第8章 游戏AI 163
8.1 WayPoint寻路 165
8.1.1 Dijkstra算法 166
8.2 A*寻路 168
8.3 U3D中的NavMesh 174
8.3.1 U3D中的导航系统 175
8.3.2 创建导航网格(NavMesh) 175
8.3.3 创建障碍物(Obstacle) 177
8.3.4 创建网格链接(Off-Mesh Link) 178
8.3.5 创建高度导航网格 179
8.4 有限状态机 182
8.5 分层状态机 185
8.6 行为树 186

第9章 网络格式 190
9.1 数据包格式 192
9.2 Google Protobuf 192
9.3 Protobuf语言格式 194
9.3.1 定义一个消息类型 194
9.3.2 值类型 195
9.3.3 字段标识与选项 198
9.3.4 枚举 198
9.4 编译Protobuf 199
9.5 如何使用Protobuf 201
9.6 游戏后台 203

第10章 全局光照GI 207
10.1 全局光照简介 209
10.2 实时照明 209
10.3 烘焙全局光照 210
10.4 预计算全局光照 211
10.5 在U3D中的操作 212
10.5.1 Precomputed Realtime GI 213
10.5.2 Baked GI 213
10.5.3 General GI 214
10.6 光照探头Light Probe 215
10.7 深度雾 216

第11章 后期处理 219
11.1 后期处理简介 221
11.2 在U3D中的使用 221
11.3 内部资源 228
11.3.1 抗锯齿Antialiasing 229
11.3.2 全屏泛光Bloom 230
11.3.3 模糊Blur 233
11.3.4 运动模糊Motion Blur 236
11.3.5 颜色校正曲线 Color Correction Curves 238
11.3.6 景深 Depth of Field 239
11.3.7 噪音与颗粒特效Noise And Grain 240
11.3.8 Noise And scratches噪音划痕 241
11.3.9 屏幕空间环境遮挡图像特效SSAO 242
11.3.10 光线特效 Sun Shafts 243

第12章 AssetBundle 246
12.1 什么是AssetBundle 248
12.2 AssetBundleManifest 249
12.3 如何生成AssetBundle 250
12.3.1 基本流程 250
12.3.2 扩展生成 251
12.4 如何加载AssetBundle 254
12.4.1 WWW 254
12.4.2 WWW.LoadFromCacheOrDownload 257
12.4.3 5.0资源清单加载流程 258
12.5 如何卸载AssetBundle 260

第13章 代码热更 262
13.1 什么是代码热更 264
13.1.1 Lua简介 264
13.2 C#反射 265
13.2.1 反射原理(Reflection) 265
13.2.2 反射的用途 265
13.2.3 反射用到的命名空间 266
13.2.4 System.Type类 266
13.2.5 查看类中的构造方法 268
13.2.6 用构造函数动态生成对象 268
13.2.7 用Activator生成对象 268
13.2.8 查看类中的属性 269
13.2.9 查看类中的public方法 269
13.2.10 查看类中的public字段 269
13.2.11 反射操作示例 269
13.2.12 System.Reflection.Assembly类 270
13.2.13 U3D热更操作流程 271
13.3 Lua 272
13.3.1 Lua基础语法 272
13.3.2 Lua变量 273
13.3.3 Lua数据类型 274
13.3.4 Lua运算符 275
13.3.5 Lua循环 277
13.3.6 Lua函数 278
13.3.7 Lua字符串 280
13.3.8 Lua数组 281
13.3.9 Lua迭代器 284
13.3.10 U3D热更操作流程 284

第14章 性能分析与优化 286
14.1 脚本调试 288
14.1.1 MonoDevelop调试 288
14.1.2 Visual Studio调试 289
14.2 Profile性能分析 290
14.2.1 CPU使用情况 291
14.2.2 渲染消耗 293
14.2.3 内存消耗 293
14.2.4 声音消耗 294
14.2.5 物理消耗 295
14.2.6 网络消耗 295
14.3 Frame Debug 296
14.4 裁剪 297
14.4.1 视锥裁剪 297
14.4.2 遮蔽裁剪 299
14.5 LOD 301
14.6 DrawCall优化 307
14.7 模型优化 311
14.8 代码优化 313

第15章 自定义绘制-场景绘制 315
15.1 辅助绘制Gizmos 317
15.1.1 自定义对象图标 318
15.1.2 DrawCube画实体方体 318
15.1.3 DrawFrustum画视椎 319
15.1.4 DrawGUITexture在场景中绘制图片 319
15.1.5 DrawIcon在场景中绘制图标 320
15.2 Handles简介 321
15.3 绘制几何体 321
15.3.1 绘制箭头 321
15.3.2 绘制圆 324
15.3.3 绘制圆锥 325
15.3.4 绘制立方体 326
15.3.5 绘制圆柱体 327
15.4 交互控制 328
15.4.1 位移手柄 328
15.4.2 自由位移手柄 330
15.4.3 旋转手柄 331
15.4.4 自由旋转手柄 332
15.4.5 缩放手柄 333
15.4.6 缩放值手柄 334
15.5 绘制图元几何 336
15.5.1 绘制线段 336
15.5.2 绘制虚线 338
15.5.3 绘制贝塞尔曲线 338
15.5.4 绘制矩形框 339
15.6 绘制2DGUI 340

第16章 自定义绘制-窗体绘制 343
16.1 自定义菜单项 345
16.2 自定义属性窗口 346
16.2.1 定制属性编辑器 347
16.2.2 自定义属性视图 348
16.2.3 绘制控件 349
16.2.4 下拉菜单 360
16.2.5 编辑器样式 361
16.2.6 界面皮肤 363
16.2.7 获取事件 364
16.2.8 编辑器工具 365
16.3 自定义窗口 368
16.3.1 创建窗口 369
16.3.2 选择目标对象 370
16.3.3 绘制子窗体 370
16.3.4 自定义视图 371