商品参数
| Unity 5.X从入门到精通 |
| | 定价 | 158.00 |
| 出版社 | 中国铁道出版社 |
| 版次 | B1 |
| 出版时间 | 2016年01月 |
| 开本 | 16 |
| 作者 | Unity Technologies |
| 装帧 | 01 |
| 页数 | |
| 字数 | 936000 |
| ISBN编码 | 9787113210472 |
? ?初 识 篇
第1章 认识Unity引擎 1
1.1 Unity简介 2
1.2 Unity发展史 3
1.3 Unity 5.0 4
第2章 Unity开发案例介绍 7
2.1 Unity游戏介绍 8
2.2 Unity非游戏应用 11
第 3 章 软件安装、授权与服务 13
3.1 软件安装 14
3.1.1 在Windows下的安装 14
3.1.2 在Mac下的安装 17
3.2 授权 19
3.3 服务 23
第 4 章 Unity开发资源介绍 25
4.1 Unity Asset Store资源商店 26
4.1.1 Asset Store简介 26
4.1.2 Asset Store使用方法 27
4.2 其他服务 31
4.2.1 Unity Ads服务 31
4.2.2 Unity Game Analytics服务 32
4.2.3 Unity Cloud Build服务 32
4.2.4 Everyplay服务 33
操 作 篇
第 5 章 Unity编辑器 35
5.1 界面布局 36
5.1.1 导航窗口 37
5.1.2 界面布局 39
5.1.3 界面定制 40
5.2 打开范例工程 41
5.3 工具栏 44
5.3.1 Transform Tools(变换工具) 45
5.3.2 Transform Gizmo Tools
(变换辅助工具) 48
5.3.3 Play(播放控制) 48
5.3.4 Layers(分层下拉列表) 49
5.3.5 Layout(布局下拉列表) 49
5.4 菜单栏 49
5.4.1 File(文件)菜单 49
5.4.2 Edit(编辑)菜单 52
5.4.3 Assets(资源)菜单 53
5.4.4 GameObject(游戏对象)菜单 53
5.4.5 Component(组件)菜单 54
5.4.6 Window(窗口)菜单 54
5.4.7 Help(帮助)菜单 55
5.5 常用工作视图 55
5.5.1 Project(项目)视图 55
5.5.2 Scene(场景)视图 58
5.5.3 Game(游戏)视图 64
5.5.4 Inspector(检视)视图 67
5.5.5 Hierarchy(层级)视图 68
5.5.6 Console(控制台)视图 69
5.5.7 Animation(动画)视图 70
5.5.8 Animator(动画控制器)视图 70
5.5.9 Sprite Editor(Sprite编辑器) 71
5.5.10 Sprite Packer(Sprite打包工具) 73
5.5.11 Lightmaps(光照贴图烘焙)
视图 75
5.5.12 Occlusion(遮挡剔除)
视图 76
5.5.13 Navigation(导航寻路)
视图 76
5.5.14 Version Control(版本控制)
视图 77
5.5.15 Asset Store(资源商店) 77
第 6 章 创建基本的3D游戏场景 79
6.1 创建游戏工程和场景 80
6.2 创建地形 83
6.2.1 编辑地形 83
6.2.2 添加树木和植被 90
6.2.3 添加水效果 93
6.3 创建光源和阴影 94
6.4 添加场景静态景物 97
6.4.1 创建基本几何体 97
6.4.2 导入外部物体 100
6.5 添加角色和控制 102
6.5.1 创建第—人称角色控制器 102
6.5.2 创建物理阻挡 105
6.6 添加环境和效果 108
6.6.1 添加天空盒 108
6.6.2 添加雾效 110
6.6.3 添加音效 111
第 7 章 创建基本的2D游戏场景 115
7.1 创建游戏工程和场景 116
7.2 创建工作层 118
7.3 添加静态景物 119
7.3.1 导入静态图片 119
7.3.2 创建静态景物 119
7.4 添加角色和控制 123
7.4.1 创建Sprite动画 123
7.4.2 创建主要的游戏对象 131
7.4.3 创建2D物理阻挡 139
7.5 添加2D效果 142
第 8 章 资源导入导出流程 147
8.1 外部资源的创建 148
8.1.1 外部资源创建工具介绍 148
8.1.2 从3ds Max中导出模型、材质和动画 149
8.2 Unity资源导入流程 155
8.2.1 3D模型、材质的导入 155
8.2.2 2D图像的导入及设置 163
8.2.3 3D动画的导入 174
8.2.4 2D动画的导入 176
8.2.5 音频、视频的导入及设置 179
8.3 资源包的导入 184
8.3.1 Unity Asset Store简介 184
8.3.2 Unity Asset Store的使用 185
8.4 资源包的导出 189
第 9 章 游戏对象、组件和Prefabs 193
9.1 创建游戏对象和组件 194
9.2 常用组件介绍 197
9.3 创建Prefabs 198
9.3.1 创建和导入Prefabs 199
9.3.2 实例化Prefabs 202
9.3.3 嵌套Prefabs
(Nested Prefabs) 206
第 10 章 Shuriken粒子系统 213
10.1 Shuriken概述 214
10.2 基本用法举例 215
10.3 高级应用技巧 221
10.3.1 地面火焰效果案例 221
10.3.2 烟花效果案例 238
10.4 系统参数详解 252
第 11 章 Mecanim动画系统 263
11.1 Mecanim概述 264
11.2 应用示例 265
11.3 资源的准备和导入 275
11.3.1 如何获取人形网格模型 275
11.3.2 如何导入动画 276
11.3.3 动画分解 276
11.4 使用人形角色动画 279
11.4.1 创建Avatar 280
11.4.2 配置Avatar 281
11.4.3 设置Muscle参数 283
11.4.4 Avatar Mask 284
11.4.5 人形动画的重定向 285
11.4.6 逆向运动学功能 288
11.4.7 —般动画 291
11.5 在游戏中使用角色动画 292
11.5.1 循环动画片段 292
11.5.2 Animator组件 293
11.5.3 Animator Controller 293
11.5.4 动画状态机 294
11.5.5 混合树 299
11.5.6 1D混合 300
11.5.7 2D混合 301
第 12 章 物理系统 303
12.1 概述 304
12.2 应用示例 304
12.3 高级应用技巧 309
12.4 物理系统相关组件及参数详解 318
12.4.1 Rigidbody组件 318
12.4.2 Character Controller组件 322
12.4.3 碰撞体组件 324
12.4.4 布料组件 332
12.4.5 关节组件 335
12.4.6 2D Physics Effectors组件 349
12.4.7 力场组件 351
第 13 章 音效系统 355
13.1 概述 356
13.2 应用示例 356
13.2.1 项目概要 356
13.2.2 项目分析 358
13.3 高级应用技术 362
13.4 声音系统相关组件及参数详解 368
第 14 章 全局光照 371
14.1 全局光照介绍 372
14.2 基本用法举例 372
14.3 高级应用技巧 376
14.4 系统参数介绍 388
第 15 章 导航网格寻路 397
15.1 概述 398
15.2 简单应用举例 398
15.3 高级应用技巧 404
15.3.1 使用Off-Mesh Link组件 404
15.3.2 为网格分层 406
15.3.3 动态更改可行进层 410
15.3.4 使用Navmesh Obstacle 组件 413
15.4 系统相关参数详解 415
第 16 章 遮挡剔除 419
16.1 概述及其应用示例 420
16.2 高级应用技巧 423
16.2.1 使用Occlusion Area组件 423
16.2.2 使用Occlusion Portals组件 424
16.3 设置烘焙参数 425
第 17 章 后期屏幕渲染特效 427
17.1 概述 428
17.2 使用参数详解 433
开 发 篇
第 18 章 3D数学基础知识 457
18.1 3D坐标系
(3D Coordinate System) 458
18.2 向量(Vector) 464
18.3 矩阵(Maxtrix) 468
18.4 齐次坐标 470
18.5 四元数 470
第 19 章 Unity脚本开发基础 475
19.1 脚本介绍 476
19.2 Unity脚本语言 477
19.3 创建并运行脚本 478
19.3.1 创建脚本 478
19.3.2 MonoDevelop编辑器 479
19.3.3 必然事件(Certain Events) 481
19.4 C#基本语法 485
19.5 访问游戏对象和组件 493
19.5.1 MonoBehaviour类 493
19.5.2 访问游戏对象 493
19.5.3 访问组件 494
19.6 常用脚本API 498
19.6.1 Transform组件 498
19.6.2 Time类 501
19.6.3 Random类 502
19.6.4 Mathf类 502
19.6.5 Coroutine协同程序 504
第 20 章 输入与控制 507
20.1 Input Manager(输入管理器) 508
20.2 鼠标输入 510
20.3 键盘操作 512
20.4 游戏外设输入 515
20.5 移动设备输入 516
20.6 自定义输入 519
第 21 章 GUI开发 523
21.1 Unity新GUI系统介绍 524
21.1.1 画布(Canvas) 524
21.1.2 Rect Transform
(矩形变换) 526
21.1.3 在场景视图中编辑
(Editing in the Scene View) 527
21.1.4 锚点(Anchors) 527
21.1.5 轴心点(Pivot) 528
21.1.6 文本(Text) 529
21.1.7 图像(Image) 530
21.1.8 原始图像(Raw Image) 531
21.1.9 遮罩(Mask) 532
21.1.10 过渡选项
(Transition Options) 532
21.1.11 导航选项
(Navigation Options) 534
21.1.12 按钮(Button) 534
21.1.13 开关(Toggle) 535
21.1.14 滑动条(Slider) 536
21.1.15 滚动条(Scrollbar) 537
21.1.16 输入栏(Input Field) 538
21.1.17 布局元素控件
(Layout Element) 539
21.1.18 内容尺寸裁切
(Content Size Fitter) 540
21.1.19 长宽比例裁切
(Aspect Ratio Fitter) 540
21.1.20 水平布局组
(Horizontal Layout Group) 541
21.1.21 垂直布局组
(Vertical Layout Group) 541
21.1.22 网格布局组
(Grid Layout Group) 542
21.2 UGUI应用实例 543
第 22 章 Shader开发 547
22.1 Shader概述 548
22.2 内建Shader介绍 549
22.2.1 内建着色器(4.X版本) 549
22.2.2 内建标准着色器(5.X版本) 553
22.3 创建自己的Shader 563
22.4 ShaderLab基础语法 565
22.4.1 Properties属性 567
22.4.2 SubShader子着色器视图 568
22.4.3 Fallback备用着色器 570
22.4.4 Category(分类) 570
22.5 Unity中的三种自定义Shader 571
22.5.1 固定功能管线着色器
(Fixed Function Shaders) 571
22.5.2 表面着色器
(Surface Shaders) 572
22.5.3 顶点片段着色器
(Vertex and Fragment Shaders) 576
22.6 Reflection Probe(反射探头) 581
第 23 章 AssetBundle工作流程 591
23.1 AssetBundle 593
23.1.1 AssetBundle的UI 593
23.1.2 BuildPipeline.BuildAsset-
Bundles 594
23.1.3 Unity处理Assets
之间的依赖 596
23.2 如何下载AssetBundle 598
23.3 AssetBundle的加载与卸载 599
23.3.1 加载AssetBundle 599
23.3.2 从AssetBundle中
加载Assets 602
23.3.3 从场景AssetBundle中加载
Assets 604
23.3.4 AssetBundle Variant的使用 605
23.3.5 卸载AssetBundle 605
23.4 AssetBundle的内存管理 606
23.4.1 下载和加载AssetBundle时
对内存的影响 606
23.4.2 AssetBundle以及Asset
的卸载 607
23.5 WWW、AssetBundle及Asset
的关系 608
第 24 章 开发进阶 609
24.1 Unity新的网络引擎UNET 610
24.1.1 授权服务器 610
24.1.2 非授权服务器 611
24.1.3 Hight Level API 611
24.1.4 Transport Layer API 624
24.1.5 WebGL Support 626
24.1.6 Internet Services 627
24.1.7 NetWorkView
(网络视图组件) 632
24.2 编辑器扩展 633
《像素秘境:Unity游戏引擎深度探索与实战》 开启你的游戏开发梦想之旅 你是否曾沉浸于那些令人惊叹的游戏世界,梦想亲手打造属于自己的数字奇迹?你是否对游戏开发充满好奇,却不知从何下手?《像素秘境:Unity游戏引擎深度探索与实战》将是你踏入游戏开发殿堂最坚实的指引,也是你将创意化为现实的最强助力。本书并非简单地介绍Unity的某个版本功能,而是致力于为你构建一个全面、深入且极具实践性的游戏开发知识体系,让你从一名 appassionato 的游戏爱好者,蜕变为一名能够独立设计、开发并发布高质量游戏的开发者。 本书的独特性与价值所在: 与市面上许多侧重于单一版本功能介绍或泛泛而谈的教程不同,《像素秘境》聚焦于游戏开发的核心理念、精髓技术以及行业内的最佳实践。我们深知,技术的更新迭代固然重要,但掌握那些永恒不变的开发思想和底层逻辑,才能让你在任何版本的Unity下都游刃有余。因此,本书将引导你深入理解Unity引擎的架构设计,掌握其背后运作的原理,从而触类旁通,应对未来的技术挑战。 内容深度剖析: 第一部分:奠定坚实基础——理解游戏引擎的灵魂 游戏开发的基石: 我们将从最根本的概念讲起,例如游戏循环、渲染管线、物理引擎、输入系统等,帮助你建立对游戏运行机制的宏观认知。你将不再是被动地使用工具,而是真正理解工具为何如此设计,以及如何更有效地利用它们。 Unity引擎的内部运作: 深入剖析Unity的核心组件,如GameObject、Component、Scene、Asset等。我们将详细讲解它们之间的关系,以及Inspector面板背后所代表的实际数据结构和逻辑。理解这些,是进行高效开发的前提。 C编程语言精要(游戏开发视角): 本书将以游戏开发的需求为导向,精讲C语言中的关键特性,包括面向对象编程(OOP)的深入理解、委托与事件的应用、LINQ查询、异步编程(async/await)等。我们将通过大量游戏开发场景来演示这些概念,让你不仅知其然,更知其所以然。 第二部分:核心开发技术——构筑游戏世界的骨架 场景搭建与资源管理: 从零开始,学习如何高效地组织和管理你的项目资源(模型、贴图、音频、动画等)。掌握地形创建、环境道具布局、光照与阴影的设置技巧,以及LOD(Level of Detail)等优化技术,为你的游戏世界注入生命力。 精通游戏物体与组件系统: 深入理解Unity的Component-Based Architecture(组件化架构)。学习如何创建自定义组件,实现游戏角色的行为、交互逻辑、UI元素等。我们将探讨如何设计健壮且可复用的组件,提升开发效率和代码质量。 角色动画与控制: 掌握Animator系统,学习如何创建和管理动画状态机,实现角色的行走、跳跃、攻击等动作。我们将讲解IK(Inverse Kinematics)的应用,以及如何通过脚本控制动画的播放和过渡,让角色栩栩如生。 物理引擎的奥秘: 详细讲解Unity的物理系统,包括Rigidbodies、Colliders、Joints等。学习如何模拟真实的物理交互,实现角色碰撞、物体弹跳、布娃娃效果等。我们将探讨物理优化技巧,避免性能瓶颈。 用户界面(UI)设计与实现: 从Canvas系统到UI Toolkit(在更新版本中的介绍),学习如何创建丰富、交互式的用户界面,包括按钮、文本框、滑动条、列表等。掌握UI布局、响应式设计以及UI动画的制作,打造用户友好的操作体验。 输入系统详解: 学习Unity的多平台输入系统,包括键盘、鼠标、手柄、触摸屏等输入方式的统一处理。我们将讲解如何根据不同的输入设备优化游戏操作,提供流畅的游戏体验。 第三部分:进阶开发与优化——打造游戏的灵魂与生命力 AI(人工智能)基础与应用: 学习导航网格(NavMesh)的构建与使用,实现NPC的寻路和智能行为。我们将探讨有限状态机(FSM)、行为树(Behavior Tree)等AI设计模式,让你的游戏角色更加聪明。 粒子系统与特效制作: 掌握Unity强大的粒子系统(Shuriken),学习如何创建火焰、烟雾、爆炸、魔法等视觉特效,为游戏增添冲击力和表现力。 音频系统与声音设计: 学习如何导入、管理和播放音效、背景音乐。掌握AudioSource、AudioListener、AudioMixer等组件,以及如何通过脚本控制音频的播放、音量、空间化等,营造沉浸式的听觉体验。 游戏性能优化: 性能是游戏成功的关键。本书将系统讲解Unity的性能剖析工具(Profiler),指导你识别性能瓶颈,并提供多种优化策略,包括Draw Call Batching、Occlusion Culling、内存管理、脚本优化等,确保游戏流畅运行。 跨平台发布与部署: 学习如何将你的游戏打包并发布到不同平台,如PC(Windows, macOS, Linux)、移动端(Android, iOS)、Web以及主机平台。我们将讲解平台相关的设置和注意事项。 第四部分:项目实战——从概念到成品的全流程演练 本书的精髓在于大量的实践项目。我们将从简单的小游戏开始,逐步深入到更复杂的项目,涵盖不同类型的游戏机制。例如: 2D平台跳跃游戏: 学习角色控制器、关卡设计、道具收集、敌人AI等。 3D射击游戏: 掌握第一人称/第三人称控制器、武器系统、弹道预测、敌人行为模式等。 休闲益智游戏: 学习UI交互、游戏逻辑、关卡生成、数据保存等。 每个项目都将详细讲解从需求分析、概念设计到代码实现、资源整合、最终优化的全过程。你将不仅仅是复制代码,而是理解每一步的设计思路和技术选型。 本书的目标读者: 零基础的编程爱好者: 即使你没有任何编程经验,本书也将从C语言基础讲起,循序渐进,让你逐步掌握游戏开发的技能。 有其他游戏引擎开发经验的开发者: 如果你曾经使用过其他引擎,但想转向Unity,本书将帮助你快速理解Unity的独特之处,并掌握其核心开发模式。 对游戏设计充满热情的学生与业余开发者: 希望将自己的创意转化为实际游戏,为自己和他人带来快乐。 希望提升Unity开发技能的初级/中级开发者: 深入理解引擎原理,掌握更高级的开发技术和优化方法。 阅读本书,你将收获: 扎实的游戏开发理论基础: 理解游戏引擎的运作原理,掌握核心开发理念。 精湛的Unity开发技能: 熟练运用Unity提供的各种工具和API,高效完成项目开发。 独立完成游戏项目的能力: 从构思到发布,全程掌控游戏开发流程。 解决实际开发问题的能力: 掌握性能优化、Bug调试等关键技巧。 通往游戏开发职业道路的敲门砖: 建立起在游戏行业中脱颖而出的竞争力。 《像素秘境:Unity游戏引擎深度探索与实战》不仅仅是一本书,它是你开启游戏开发之路的启程碑,是你实现游戏梦想的伙伴。我们相信,通过本书的学习,你将能够自信地踏入令人兴奋的游戏开发领域,用你的创意和技能,描绘出属于你自己的精彩像素世界。让我们一起,在Unity的海洋中,探索无尽的可能!