书籍详情

创造高清3D虚拟世界:Unity引擎HDRP高清渲染管线实战

创造高清3D虚拟世界:Unity引擎HDRP高清渲染管线实战

作者:杨栋 著

出版社:电子工业出版社

出版时间:2021-09-01

ISBN:9787121416590

定价:¥198.00

购买这本书可以去
内容简介
  《创造高清3D虚拟世界:Unity引擎HDRP高清渲染管线实战》共11章,不仅包含HDRP入门基础,更通过剖析优秀案例对高清渲染管线的主体框架和各种特性进行阐述,如完全基于物理的光照和材质系统、体积光与雾效设置、光照烘焙及实时后处理效果等。本书全方位讲解如何使用Unity HDRP高清渲染技术来制作高质量画面内容。读者不管是在开发游戏、影视动画,还是在开发VR游戏、互动应用,都可以从本书中找到所需的高画质内容制作技术。本书进阶部分包括HDRP在VR中的具体应用方法、Unity实时光线追踪的具体用法,以及如何使用Debug系统和Custom Pass高级应用等。书中包含两个完整的Unity项目及相关操作步骤,读者一边操作一边阅读,即可把书中学到的技术直接应用到自己的项目中。
作者简介
  杨栋目前担任Unity大中华区平台技术总监,负责管理技术讲师团队并参与Unity产品本地化等相关工作。他拥有丰富的Unity开发经验,致力于将Unity的技术推广给广大开发者。有十余年的Web端和移动端项目研发经验,多年的海外生活与工作经验,曾参与完美世界北美分公司后台数据平台研发,并作为技术项目经理主导了完美世界海外手游SDK研发工作。
目录
第1章 HDRP入门1
1.1 摘要 1
1.2 离线渲染和实时渲染 8
1.2.1 建模功能(ProBuilder、ProGrid和PolyBrush套件)8
1.2.2 Timeline(非线编工具)9
1.2.3 Cinemachine(智能摄像机系统)9
1.2.4 HD.Post.Processing.Effect(HDRP专用后期特效模块)9
1.2.5 可视化着色器编程工具Shader.Graph 9
1.2.6 高级特效开发工具Visual.Effect.Graph 9
1.2.7 视频和动画输出工具Unity.Recorder 9
1.2.8 HDRP针对不同材质的模拟10
1.3 在DCC软件中准备模型资产 10
1.3.1 在DCC软件中使用的尺寸单位要与Unity统一 10
1.3.2 只在需要的地方使用三角面11
1.3.3 纹理制作 11
1.3.4 支持FBX、USD和Alembic格式的资产导入11
1.3.5 Unity.Reflect支持导入Autodesk.Revit资产 11
1.4 Unity HDRP项目设置 12
1.4.1 创建一个基于高清渲染管线(HDRP)的Unity项目 12
1.4.2 通过示例项目了解HDRP相关的概念和模块 16
1.5 学习渠道 52
1.6 本章总结 53
第2章 实现市政厅办公室场景54
2.1 摘要 54
2.2 实战项目详解 55
2.2.1 使用Volume框架设置环境 58
2.2.2 添加屏幕后处理效果 62
2.2.3 添加光源、Light.Probe(光照探针)和Reflection.Probe(反射探针)64
2.2.4 烘焙光照贴图 69
2.3 本章总结 74
第3章 HDRP配置文件和Volume框架详解 75
3.1 摘要 75
3.2 HDRP配置文件(HDRP Asset)介绍 75
3.2.1 Frame.Settings(帧设置)75
3.2.2 Volume框架 77
3.2.3 针对不同平台使用不同的HDRP配置文件 94
3.3 Volume框架详解 96
3.3.1 Exposure(曝光控制)99
3.3.2 Fog(雾效制作)110
3.3.3 Lighting(光照)121
3.3.4 Material(材质)121
3.3.5 Shadowing(阴影处理)122
3.3.6 Sky(天空)122
3.3.7 Post-processing(后处理)126
3.3.8 Ray.Tracing(实时光线追踪)126
3.3.9 Local.Volume(本地Volume)使用示例 126
3.4 本章总结 130
第4章 HDRP光照系统详解 131
4.1 摘要 131
4.2 Sponza_Day_Lighting场景打光步骤解析 131
4.2.1 步骤1:启用Scene.Settings.Volume 134
4.2.2 步骤2:启用Directional.Light(平行光)136
4.2.3 步骤3:启用Volume中的自动曝光控制138
4.2.4 步骤4:启用所有灯笼模型和点光源139
4.2.5 步骤5:启用场景中所有反射探针(Reflection.Probe)140
4.2.6 步骤6:启用场景中的光照探针组(Light.Probe.Group)143
4.2.7 步骤7:完成整个场景的光照烘焙145
4.2.8 步骤8:增强间接光强度150
4.2.9 步骤9:处理阴影和环境光遮蔽154
4.2.10 步骤10:添加雾效 166
4.2.11 步骤11:画面抗锯齿处理168
4.2.12 步骤12:添加后处理Volume组件 171
4.3 Sponza_Night_Lighting场景打光步骤解析 173
4.3.1 修改Directional.Light设置173
4.3.2 修改Scene.Settings.Volume→HDRI.Sky设置174
4.3.3 修改Scene.Settings.Volume→Exposure(曝光)设置174
4.3.4 修改Scene.Settings.Volume→Fog(雾效)设置175
4.3.5 修改Scene.Settings.Volume→Contact.Shadow(接触阴影)设置 175
4.3.6 修改Post.Processing.Volume→Color.Adjustment(颜色调整)设置 175
4.3.7 修改Post.Processing.Volume→White.Balance(白平衡)设置176
4.4 光源类型和模式 177
4.4.1 Unity中的光源类型有哪几种 177
4.4.2 Unity中的光照单位200
4.4.3 如何制作和使用Light.Cookie为灯光添加更多细节201
4.4.4 光照相关的常见问题汇总204
4.5 光源分层 212
4.5.1 光源分层的作用 212
4.5.2 光源分层实例讲解 212
4.6 使用光照探针 217
4.6.1 为什么要使用光照探针 217
4.6.2 使用光照探针的基本步骤 218
4.6.3 Mesh.Renderer组件中的Probes选项详解 223
4.6.4 如何使用Mesh.Renderer组件的Probes→Anchor.Override参数 227
4.6.5 如果打开了Lighting窗口中Debug.Settings中的All.Probes.No.Cells选项,但是在Scene窗口看不到光照探针如何处理 230
4.7 使用Reflection Probe为场景提供反射信息 231
4.7.1 Screen.Space.Reflection(屏幕空间反射)231
4.7.2 Reflection.Probe(反射探针)233
4.7.3 Sky.reflection(天空反射)242
4.8 阴影 242
4.8.1 阴影的种类和三种光照模式 242
4.8.2 两种Shadowmask模式下的阴影表现 244
4.8.3 阴影的投射距离设置248
4.8.4 Distance.Shadowmask和Shadowmask两种模式对性能的影响248
4.9 本章总结 .249
第5章 Lightmapping(光照烘焙)详解250
5.1 摘要 .250
5.2 渐进式光照贴图烘焙对场景中的模型有什么要求 252
5.3 渐进式光照贴图烘焙对硬件的要求是什么?支持Unity的哪些渲染管线 257
5.4 进行渐进式光照贴图烘焙时烘焙出来的是什么 257
5.5 渐进式光照贴图烘焙的CPU版本和GPU版本有什么区别 261
5.6 光照贴图烘焙界面参数详解 261
5.7 不同显卡对GPU版本的烘焙效率有什么影响 275
5.8 相同场景使用CPU烘焙需要多长时间 279
5.9 为什么GPU版本在烘焙的过程中,有时会自动切换成CPU版本 279
5.10 如何避免GPU烘焙自动切换成CPU烘焙 280
5.11 如何解决光照贴图接缝问题 282
5.12 如何整体地查看光照贴图的不同组成部分 283
5.13 如何查看场景中的模型在光照贴图中的位置?
如何调整模型在光照贴图中的占比大小 284
5.14 本章总结 288
第6章 HDRP材质详解 289
6.1 摘要 289
6.2 使用Lit着色器制作典型材质 290
6.2.1 木头材质 290
6.2.2 冰箱材质 298
6.2.3 陶瓷材质 300
6.2.4 (普通)玻璃材质 306
6.2.5 (带折射的)玻璃材质312
6.2.6 半透明材质和次表面散射材质317
6.2.7 自发光材质 327
6.2.8 Decal(贴花)的具体使用方法 330
6.3 渲染器和材质优先级 339
6.4 使用HDRP自带的示例材质库 340
6.4.1 金属箔材质 342
6.4.2 肥皂泡材质 345
6.5 本章总结 348
第7章 Post.Processing后处理详解 350
7.1 摘要 350
7.2 为场景添加后处理效果的步骤 351
7.3 后处理效果应用顺序和效果组合 351
7.4 HDRP中的后处理效果 352
7.4.1 Tonemapping(色调映射)353
7.4.2 White.Balance(白平衡)354
7.4.3 Bloom(泛光)354
7.4.4 Film.Grain(胶片颗粒)356
7.4.5 Depth.of.Field(景深)357
7.4.6 Panini.Projection(帕尼尼投影)359
7.4.7 Lens.Distortion(镜头畸变)360
7.4.8 Motion.Blur(运动模糊)360
7.4.9 Chromatic.Aberration(色差)362
7.4.10 Vignette(晕映)363
7.4.11 Lift、Gamma和Gain(颜色分级)364
7.4.12 Channel.Mixer(通道混合)365
7.4.13 Color.Curve(颜色曲线)366
7.4.14 Color.Adjustment(颜色调整)367
7.4.15 Split.Toning(分离调色)368
7.4.16 Shadow、Midtones、Highlights(阴影、中间调、高光)369
7.5 本章总结 370
第8章 HDRP.Debug窗口介绍371
8.1 摘要 371
8.2 Material(材质)相关的Debug窗口 372
8.3 Lighting(光照)相关的Debug窗口 374
8.4 Camera(相机)相关的Debug窗口 376
8.5 MatCap显示模式的使用方法 378
8.6 本章总结 380
第9章 HDRP在VR中的应用 381
9.1 摘要 381
9.2 HDRP VR支持的平台 381
9.2.1 系统要求 381
9.2.2 支持的平台 382
9.3 配置HDRP项目以支持VR 382
9.4 可以应用到VR中的HDRP功能 387
9.5 将市政厅办公室场景转换成HDRP VR 388
9.5.1 配置HDRP VR 388
9.5.2 配置XR.Plug-in.Management 388
9.5.3 添加XR.Interaction.Toolkit 388
9.5.4 创建XR.Rig、控制器和瞬移区域 389
9.5.5 创建转向系统 395
9.5.6 创建可交互物体 396
9.5.7 构建项目到设备 397
9.6 在VR设备中进行Debug 398
9.7 本章总结 400
第10章 HDRP.Custom.Pass应用401
10.1 摘要 401
10.2 Custom Pass实例解析 401
10.2.1 实例讲解1 402
10.2.2 实例讲解2 407
10.3 如何查看Custom Pass的渲染阶段 408
10.4 本章总结 409
第11章 HDRP实时光线追踪项目应用410
11.1 摘要 410
11.1.1 运行光追应用所需的软硬件411
11.1.2 Unity光追功能在编辑器中的位置 411
11.2 配置HDRP光追项目 414
11.2.1 将普通HDRP项目升级到支持光追的HDRP项目414
11.2.2 进一步设置HDRP配置文件(HDRP.Asset)启用相关的光追功能 417
11.2.3 在HDRP.Default.Settings界面启用相机的Frame.Settings中的光追功能 421
11.2.4 在Scene窗口打开相机的抗锯齿功能和启用刷新设置 422
11.3 光追功能的使用方法 423
11.3.1 环境光遮蔽 424
11.3.2 屏幕空间反射 427
11.3.3 屏幕空间全局光 431
11.3.4 Light.Cluster的使用 433
11.3.5 屏幕空间阴影 439
11.3.6 次表面散射 443
11.3.7 递归式渲染 450
11.3.8 路径追踪 453
11.4 本章总结 457
附录A 基于物理的光照单位和参考数值(参考自Unity.HDRP官方文档)458
附录B 色温(Color.Temperature)463
附录C 在Unity中制作高质量的光照效果 464
猜您喜欢

读书导航