Unity 5.X 3D游戏开发技术详解与典型案例PDF电子书下载
- 电子书积分:18 积分如何计算积分?
- 作 者:吴亚峰,索依娜编著;百纳科技审校
- 出 版 社:北京:人民邮电出版社
- 出版年份:2016
- ISBN:9787115412737
- 页数:627 页
第1章 Unity基础以及开发环境的搭建 1
1.1 Unity基础知识概览 1
1.1.1 初识Unity 1
1.1.2 Unity的诞生及发展 1
1.1.3 Unity广阔的市场前景 2
1.1.4 独具特色的Unity 3
1.2 Unity开发环境的搭建 7
1.2.1 Windows平台下Unity的下载及安装 7
1.2.2 Mac OS平台下Unity的下载及安装 11
1.2.3 目标平台的SDK与Unity集成 14
1.3 第一个Unity程序 17
1.4 本书案例的导入及运行 21
1.5 本章小结 25
第2章 Unity集成开发环境详解 27
2.1 Unity集成开发环境的整体布局 27
2.1.1 Unity集成开发环境的整体布局 27
2.1.2 菜单栏 28
2.1.3 工具栏 28
2.1.4 场景设计面板 29
2.1.5 游戏预览面板 32
2.1.6 游戏组成对象列表 33
2.1.7 项目资源列表 34
2.1.8 属性查看器 35
2.1.9 状态栏与控制台 35
2.1.10 动画视图 36
2.1.11 动画控制器编辑视图 36
2.2 菜单栏 37
2.2.1 文件(File) 37
2.2.2 编辑(Edit) 40
2.2.3 资源(Assets) 46
2.2.4 游戏对象(GameObiect) 52
2.2.5 组件(Component) 55
2.2.6 窗口(Window) 60
2.2.7 帮助(Help) 65
2.3 本章小结 70
第3章 Unity脚本程序开发 71
3.1 Unity脚本概述 71
3.2 Unity中C#脚本的注意事项 71
3.2.1 继承自MonoBehaviour类 72
3.2.2 类名字必须匹配文件名 72
3.2.3 使用Awake或Start方法初始化 72
3.2.4 Unity脚本中协同程序有不同的语法规则 72
3.2.5 只有满足特定情况变量才能显示在属性查看器中 72
3.2.6 尽量避免使用构造函数 72
3.2.7 调试 72
3.3 Unity脚本的基础语法 73
3.3.1 常用操作 73
3.3.2 记录时间 74
3.3.3 访问游戏对象组件 75
3.3.4 访问其他游戏对象 76
3.3.5 向量 78
3.3.6 成员变量和静态成员变量 79
3.3.7 实例化游戏对象 80
3.3.8 协同程序和中断 80
3.3.9 一些重要的类 81
3.3.10 性能优化 85
3.3.11 脚本编译 86
3.4 综合案例 86
3.4.1 案例策划及准备工作 87
3.4.2 创建项目及场景搭建 87
3.4.3 飞机控制脚本实现 89
3.4.4 摄像机跟随脚本实现 92
3.5 本章小结 93
第4章 Unity 3D图形用户界面基础 95
4.1 GUI图形用户界面系统 95
4.1.1 图形用户界面组件的变量 95
4.1.2 图形用户界面中的常用控件 102
4.1.3 图形用户界面控件综合案例 125
4.2 UGUI图形用户界面系统 127
4.2.1 创建UGUI控件 127
4.2.2 Canvas画布 128
4.2.3 EventSystem 129
4.2.4 RectTransform组件 130
4.2.5 Panel控件 130
4.2.6 Button控件 131
4.2.7 Text控件 134
4.2.8 Image控件 135
4.2.9 Raw Image控件 135
4.2.10 Slider控件 136
4.2.11 Scrollbar控件 137
4.2.12 Toggle控件 138
4.2.13 Input Field控件 139
4.2.14 UGUI布局管理的使用及相关组件介绍 140
4.2.15 UGUI中不规则形状的按钮的碰撞检测 142
4.2.16 Scroll View的制作 143
4.2.17 UGUI综合案例——音乐播放器的UI搭建 145
4.3 预制件(prefab)资源的应用 153
4.3.1 预制件(prefab)资源的创建 153
4.3.2 通过prefab资源进而实例化对象 154
4.4 常用的输入对象 155
4.4.1 Touch输入对象 155
4.4.2 Input输入对象 157
4.5 与销毁相关的方法 161
4.5.1 Object.Destroy方法 162
4.5.2 NetWork.Destroy方法 162
4.5.3 MonoBehaviour.OnDestroy方法 163
4.6 本章小结 163
第5章 Unity 3D第三方2D组件库——NGUI 165
5.1 初识NGUI 165
5.1.1 NGUI背景概述 165
5.1.2 NGUI的导入 165
5.1.3 UI层简介 166
5.2 NGUI菜单介绍 167
5.2.1 “Selection”菜单 168
5.2.2 “Create”菜单 168
5.2.3 “Attach”菜单 168
5.2.4 “Tween”菜单 173
5.2.5 “Open”菜单 173
5.2.6 其他菜单 175
5.3 控件工具的使用 176
5.3.1 图片精灵——Sprite 176
5.3.2 文本标签——Label 177
5.3.3 图片精灵——Texture 179
5.3.4 组件容器——Widget 180
5.3.5 锚点——Anchor 182
5.3.6 面板——Panel 183
5.3.7 滚动视图——Scroll View 184
5.3.8 网格——Grid 186
5.3.9 表格——Table 187
5.4 UI库中默认组件的制作 187
5.4.1 按钮——Colored Button 187
5.4.2 复选框——Colored Checkbox 189
5.4.3 水平滚动条——Colored Horizontal Scroll Bar 192
5.4.4 滑块——Colored Slider 194
5.4.5 弹出列表——Colored Popup List 197
5.4.6 输入框——Control-Simple Input Field 199
5.5 杂项 200
5.5.1 Atlas图集制作 200
5.5.2 中文字体制作 202
5.5.3 动画曲线编辑 203
5.6 一个NGUI的综合案例 204
5.6.1 界面一制作 204
5.6.2 界面二制作 207
5.6.3 界面三制作 210
5.7 本章小结 212
第6章 物理引擎 213
6.1 刚体 213
6.1.1 刚体特性 213
6.1.2 物理管理器 219
6.2 碰撞器 221
6.2.1 碰撞器的添加 222
6.2.2 碰撞过滤 225
6.2.3 物理材质 228
6.3 粒子系统 229
6.3.1 粒子系统的简介 229
6.3.2 粒子系统的特性 230
6.3.3 粒子系统的综合使用 238
6.4 关节 243
6.4.1 铰链关节的特性 243
6.4.2 铰链关节的创建 244
6.4.3 固定关节的特性 245
6.4.4 固定关节的创建 245
6.4.5 弹簧关节的特性 246
6.4.6 弹簧关节的创建 247
6.4.7 角色关节的特性 247
6.4.8 角色关节的创建 248
6.4.9 可配置关节的特性 249
6.4.10 可配置关节的创建 250
6.4.11 关节综合案例——机械手 251
6.5 交通工具 256
6.5.1 车轮碰撞器添加 256
6.5.2 车轮碰撞器的特性 257
6.5.3 车轮碰撞器的应用 258
6.6 布料 262
6.6.1 蒙皮网格 263
6.6.2 布料特性 263
6.6.3 布料的简单案例 264
6.7 力场 265
6.7.1 力场组件特性 265
6.7.2 力场综合案例 266
6.8 物理引擎在动画系统中的使用 267
6.8.1 场景的搭建 267
6.8.2 脚本的开发 270
6.8.3 运行效果 271
6.9 物理引擎综合案例 271
6.9.1 场景的搭建 271
6.9.2 界面的搭建 277
6.9.3 脚本的开发 277
6.9.4 案例开发总结 280
6.10 本章小结 280
第7章 着色器——Shader 281
7.1 初识着色器 281
7.1.1 着色器概述 281
7.1.2 ShaderLab语法基础 282
7.1.3 着色器中涉及的各种空间概念 287
7.2 着色器的3种形态 289
7.2.1 固定管线着色器 289
7.2.2 顶点片元着色器 290
7.2.3 表面着色器 294
7.3 表面着色器 295
7.3.1 表面着色器基础知识 296
7.3.2 通过表面着色器实现体积雾 300
7.4 渲染通道的通用指令 305
7.4.1 设置LOD数值 305
7.4.2 渲染队列 307
7.4.3 混合模式介绍 309
7.4.4 Alpha测试 310
7.4.5 深度测试 312
7.4.6 通道遮罩 314
7.4.7 面的剔除操作 315
7.4.8 抓屏操作 317
7.5 着色器的组织和优化 318
7.5.1 着色器的组织和复用 319
7.5.2 移动平台上的优化 322
7.6 综合案例 324
7.6.1 案例策划及准备工作 325
7.6.2 创建项目及场景搭建 326
7.6.3 着色器及相关脚本的开发 327
7.6.4 结点对象的创建及相关脚本的开发 332
7.7 本章小结 335
第8章 3D游戏开发的常用技术 337
8.1 天空盒的应用 337
8.1.1 Unity天空盒资源 337
8.1.2 开发实际需要的天空盒 339
8.2 3D拾取技术 340
8.3 视频贴图 343
8.3.1 基础知识 343
8.3.2 视频贴图案例 343
8.4 动态字体 346
8.5 重力加速度传感器 347
8.6 PlayerPrefs类 349
8.7 虚拟按钮与摇杆的使用 350
8.7.1 下载并导入标准资源包 351
8.7.2 虚拟按钮和摇杆使用的案例 351
8.8 声音 353
8.8.1 声音类型 353
8.8.2 音频管理器——AudioManager 354
8.8.3 音频监听器——Audio Listener 354
8.8.4 音频源——Audio Source 355
8.8.5 音频效果——AudioEffects 357
8.8.6 音频混响区——Audio Reverb Zones 360
8.8.7 简单的声音控制案例 361
8.8.8 混音器——AudioMixer 362
8.9 水特效 367
8.9.1 基础知识 367
8.9.2 案例 368
8.10 雾特效 370
8.10.1 案例效果与基本原理 370
8.10.2 场景搭建及开发步骤 370
8.11 本章小结 373
第9章 光影效果的使用 375
9.1 光源 375
9.1.1 点光源(Point Light) 375
9.1.2 定向光源(Directional Light) 377
9.1.3 聚光灯光源(SpotLight) 377
9.1.4 区域光光源(AreaLight) 378
9.1.5 发光材质 378
9.2 光照贴图的烘焙与使用 379
9.2.1 对场景进行光照烘焙 379
9.2.2 光照烘焙参数详解 380
9.3 法线贴图 383
9.3.1 在Unity中使用法线贴图 383
9.3.2 如何在3DMax中制作法线贴图 386
9.4 镜子的开发 387
9.4.1 场景的搭建 388
9.4.2 镜面着色器的开发 391
9.4.3 C#脚本的开发 391
9.5 真实的水面效果开发 394
9.5.1 基本原理 394
9.5.2 场景的搭建 395
9.5.3 C#脚本的开发 396
9.5.4 镜面着色器的开发 399
9.6 Unity 3D光照系统中的高级功能 401
9.6.1 渲染路径与颜色空间 401
9.6.2 Cookies 402
9.6.3 Flare镜头光晕 403
9.6.4 Culling Mask光照过滤 404
9.6.5 阴影的设置 404
9.6.6 Light Probes光探头 406
9.7 Unity 3D 5.0中新增的光照功能详解 408
9.7.1 基于物理学的标准着色器 408
9.7.2 反射探头(Reflection Probe) 411
9.7.3 全局光照技术详解 415
第10章 模型与动画 419
10.1 3D模型导入 419
10.1.1 主流3D建模软件的介绍 419
10.1.2 Unity与建模软件单位的比例关系 420
10.1.3 将3D模型导入Unity 421
10.2 网格Mesh 422
10.2.1 网格过滤器(MeshFilter) 422
10.2.2 Mesh属性和方法介绍 423
10.2.3 Mesh的使用 423
10.2.4 使用Mesh使物体变形的一个简单案例 424
10.3 第三方切割工具库Shatter Toolkit的使用 429
10.3.1 Shatter Toolkit简介 429
10.3.2 使用Shatter Toolkit的一个简单案例 430
10.4 旧版动画系统 438
10.4.1 导入角色动画资源 438
10.4.2 动画控制器(Animation) 439
10.4.3 动画脚本 440
10.4.4 使用旧版动画系统的简单案例 441
10.5 Mecanim动画系统 444
10.5.1 角色动画的配置 444
10.5.2 动画控制器的创建 447
10.5.3 动画控制器的配置 448
10.5.4 角色动画的重定向 451
10.5.5 角色动画的混合——创建动画混合树 453
10.5.6 角色动画的混合——混合类型介绍 455
10.5.7 Mecanim中的代码控制 456
10.5.8 案例分析 461
10.6 本章小结 464
第11章 地形与寻路技术 465
11.1 地形引擎 465
11.1.1 地形的创建 465
11.1.2 灰度图的使用 469
11.2 拖尾渲染器——Trail Renderer 471
11.2.1 背景介绍 471
11.2.2 拖尾渲染器属性介绍 471
11.2.3 拖尾渲染器的使用 472
11.2.4 产生汽车轮胎拖痕案例 472
11.2.5 产生汽车刹车痕案例 474
11.3 自动寻路技术 476
11.3.1 基础知识 476
11.3.2 一个简单的案例 477
11.4 本章小结 481
第12章 游戏资源更新 483
12.1 AssetBundle资源包 483
12.1.1 AssetBundle简介 483
12.1.2 创建AssetBundle 483
12.1.3 AssetBundle的下载 486
12.1.4 AssetBundle的加载和卸载 488
12.1.5 关于AssetBundle 489
12.1.6 本节小结 491
12.2 Lua热更新 491
12.2.1 热更新的基本介绍 491
12.2.2 Lua的基本情况介绍 491
12.2.3 SimpleFramework框架介绍 492
12.2.4 热更新案例 493
12.2.5 本节小结 498
12.3 本章小结 498
第13章 多线程技术与网络开发 499
13.1 多线程技术 499
13.1.1 基本知识 499
13.1.2 多线程技术用于大量计算 501
13.1.3 多线程技术在网络开发中的应用 503
13.2 WWW类 506
13.2.1 用WWW类访问网络资源 506
13.2.2 场景搭建 506
13.2.3 C#脚本的编写 507
13.3 网络类——Network 507
13.3.1 静态变量 507
13.3.2 静态方法 510
13.3.3 消息发送 515
13.4 基于Unity Network开发网络游戏 516
13.4.1 非授权服务器和授权服务器 516
13.4.2 Network View网络视图组件 517
13.4.3 案例的效果预览 517
13.4.4 案例场景的搭建 517
13.4.5 项目主体脚本的开发 520
13.4.6 服务器和客户端的发布 525
13.5 基于Socket开发Unity网络游戏 525
13.5.1 网络游戏架构简介 526
13.5.2 案例的效果预览与资源准备 527
13.5.3 案例场景的搭建 528
13.5.4 服务器端的开发 531
13.5.5 客户端的开发 532
13.6 本章小结 540
第14章 Unity 2D游戏开发 541
14.1 Unity 2D基础介绍 541
14.1.1 Unity 2D项目的创建 541
14.1.2 Unity 2D功能简要介绍 542
14.1.3 Unity 2D游戏开发工作流程的简要介绍 542
14.2 Unity 2D核心功能对象——Sprite 543
14.2.1 Sprite对象的创建和基本用法 543
14.2.2 换帧动画的制作 544
14.2.3 制作换帧动画的具体步骤 545
14.3 Unity 2D中的物理引擎 549
14.3.1 2D刚体 549
14.3.2 2D碰撞器 552
14.3.3 2D关节 554
14.3.4 使用2D物理引擎制作撞冰块案例 557
14.4 一个完整的2D游戏案例 563
14.4.1 游戏玩法以及功能概述 563
14.4.2 游戏的策划及准备工作 564
14.4.3 游戏的架构 565
14.4.4 菜单场景 566
14.4.5 游戏场景 568
14.5 本章小结 574
第15章 常用性能优化技术 575
15.1 程序性能的分析 575
15.1.1 Profiler使用方法 575
15.1.2 Profiler的参数说明 576
15.2 代码的断点调试 578
15.2.1 通过MonoDevelop调试 578
15.2.2 Microsoft Visual Studio Tools forUnity的使用 579
15.3 优化事项 580
15.3.1 遮挡剔除技术 581
15.3.2 批处理技术 582
15.3.3 移动平台的优化技巧 582
15.4 本章小结 583
第16章 综合案例——指间足球 585
16.1 背景以及功能概述 585
16.1.1 游戏背景概述 585
16.1.2 游戏功能简介 585
16.2 游戏的策划及准备工作 587
16.2.1 游戏的策划 587
16.2.2 使用Unity开发游戏前的准备工作 587
16.3 游戏的架构 590
16.3.1 各个场景的简要介绍 590
16.3.2 游戏架构简介 591
16.4 游戏主场景 592
16.4.1 场景搭建 592
16.4.2 主摄像机设置及脚本开发 596
16.4.3 守门员游戏对象相关脚本开发 602
16.4.4 检测板游戏对象相关脚本开发 603
16.4.5 提示板游戏对象相关脚本的开发 605
16.4.6 门框游戏对象相关脚本的开发 606
16.4.7 其他脚本的开发 607
16.5 游戏界面的开发 611
16.5.1 主菜单界面的搭建 611
16.5.2 主菜单界面监听脚本的开发 615
16.5.3 游戏界面的搭建 621
16.5.4 游戏界面监听脚本的开发 622
16.5.5 游戏暂停界面监听脚本的开发 625
16.6 游戏的优化与改进 626
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《区块链DAPP开发入门、代码实现、场景应用》李万胜著 2019
- 《中学语文教学案例研究》贺卫东主编 2019
- 《高含硫气藏开发腐蚀控制技术与实践》唐永帆,张强 2018
- 《Cinema 4D电商美工与视觉设计案例教程》樊斌 2019
- 《主题公园开发与管理》梁增贤编著 2019
- 《大气中典型二恶英类物质的氧化降解机理研究》张晨曦 2017
- 《生活垃圾焚烧飞灰中典型污染物控制技术》朱芬芬等编著 2019
- 《典型地区居民汞、镉、砷、铅、铬环境总暴露研究报告》中国环境科学研究院著 2018
- 《中南高校档案文化资源开发综合研究》涂上飙 2019
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《HTML5从入门到精通 第3版》(中国)明日科技 2019
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《办好人民满意的教育 全国教育满意度调查报告》(中国)中国教育科学研究院 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《人民院士》吴娜著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《中国人民的心》杨朔著;夕琳编 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《中华人民共和国成立70周年优秀文学作品精选 短篇小说卷 上 全2册》贺邵俊主编 2019
- 《指向核心素养 北京十一学校名师教学设计 数学 九年级 上 配人教版》周志英总主编 2019
- 《中华人民共和国成立70周年优秀文学作品精选 中篇小说卷 下 全3册》洪治纲主编 2019