第1章 HDRP入门
1.1 摘要
Unity引擎创立于2004年,已经成长为全球应用最广泛的实时内容创作平台。
Unity应用最广泛的是游戏领域。目前全球移动游戏榜单上前1000位的游戏中,超过半数是使用Unity开发的。在中国区移动游戏榜单上前1000位收入最高的游戏中,超过80%是使用Unity作为开发工具(2020年上半年数据)。另外,凭借对接近30个计算平台(PC、Mac、Linux、iOS、Android、Switch、Xbox、PlayStation、ARCore、ARKit、Vuforia、小米等)跨平台开发的支持能力,Unity正在快速渗透到包括VR/AR/MR的模拟仿真应用、建筑效果展示、汽车设计制造甚至影视动画制作等传统行业的内容设计制作流程中。
计算机图形学是与Unity实时内容创作平台紧密相关的一门学科,其中蓬勃发展的实时渲染技术是Unity引擎得以快速成长的基础。自Unity 2018版本开始,Unity在原先的标准渲染管线(Built-in Render Pipeline)基础上增加了可编程渲染管线(Scriptable Render Pipeline,SRP)。SRP为内容开发者打开了一扇崭新的实时渲染之门。
在SRP发布之前,所有平台都是通过同一个标准渲染管线来做渲染输出。虽然使用非常方便(无须选择适配渲染管线),但是标准渲染管线对于开发者而言就像一个黑盒子,里面的渲染逻辑完全不可知。开发者也无法通过代码去控制整个渲染的流程,无法选择需要渲染的内容。随着SRP的发布,开发者可以通过C#代码直接指定渲染内容和控制渲染流程,也可以为自己的游戏或者应用定制独特的渲染管线。
为了帮助内容创作者尽快使用上SRP,Unity提供了两个在创建项目时就可以选择的模板:高清渲染管线(High Definition Render Pipeline,HDRP)和通用渲染管线(Universal Render Pipeline,URP)。HDRP目前可用于制作基于PC、Xbox One(或更新)和PlayStation 4(或更新)平台的游戏或者应用,也支持输出高端VR应用;URP则可用于所有平台(包括HDRP支持的所有平台)的游戏和应用开发。HDRP对于高端移动平台的支持目前正在研发之中。
为了让读者对书中内容有直观的感受,笔者准备了多个HDRP工程作为书中的示例。读者可以跟随笔者提供的具体步骤和思路,通过实际上手练习达到快速入门和精进HDRP的目的。
随着Unity版本的快速更新,我们有机会在本书交付印刷之前添加一章实时光线追踪(Real Time Ray Tracing)的内容。
虽然本书前10章的内容都是基于Unity 2019.4 LTS版本中的HDRP 7.x来讲解, Unity 2020.3 LTS版本中某些UI界面有所更新,但是这10章的内容同样适用于Unity 2020.3 LTS版本。
在第11章中,我们讲解了使用Unity 2020.3 LTS版本中最新更新的实时光线追踪功能的方法,以及如何在Unity中使用光追功能来提升整体画面质量。
表1.1列出了跟随本书练习所需的预备知识,推荐的硬件、软件,和所有工程文件的下载地址。
表1.1 应该做的准备工作
续表
那么HDRP高清渲染技术到底可以实现怎样的画质呢?
以下(见图1.1~图1.7)是Unity官方自己制作的多个HDRP项目的截图,其中也包括Unity中国主导制作的《发条乐师》动画短片。
图1.1 《枫丹白露》工程截图(白天)
图1.2 《枫丹白露》工程截图(夜晚)
图1.3 Visual Effect Graph示例工程截图
图1.4 《丹麦阿美琳堡宫》示例工程截图
图1.5 通过《异教徒》中的数字人项目可以学习如何制作逼真的皮肤、眼睛、眉毛等材质
图1.6 通过《异教徒》中的此项目可以深入学习如何使用Visual Effect Graph制作非常复杂的动态角色
图1.7 《发条乐师》动画短片截图
(1)《枫丹白露》场景
项目下载地址:https://github.com/Unity-Technologies/FontainebleauDemo
此场景包含日夜变化的制作方法。大部分美术资产通过照片建模的方式制作完成。
(2)Visual Effect Graph(Unity最新的GPU加速粒子效果制作模块)演示场景
项目下载地址:https://github.com/Unity-Technologies/SpaceshipDemo
此场景包含很多通过Visual Effect Graph制作的由GPU加速的粒子效果。这些效果包含逼真的火焰、烟雾、电火花、离子反应堆等。如果你还不熟悉Visual Effect Graph的使用方法,可以打开此项目直接学习,或者直接把项目中的效果复制到自己的HDRP项目中使用。
(3)《丹麦阿美琳堡宫》场景
这是由Unity HDRP开发团队的灯光技术美术师制作的逼真写实场景。此项目着重展示的是在不同的天气和光照条件下如何制作丰富的光影效果。Unity会在不久的将来公开此项目供用户作为学习资料之用。
(4)《异教徒》动画短片
这是由Unity官方工程师打造的高清渲染项目,可以通过B站Unity官方号观看完整影片:https://www.bilibili.com/video/BV137411z7em。
而且Unity官方把影片中的两个主角的资源免费放到了Unity资源商店,供大家下载以作为学习资料。
(5)《发条乐师》动画短片
这是由Unity中国团队主导制作的卡通风格动画短片,使用的技术与《异教徒》中的HDRP技术完全相同。
由于版权原因,我们无法在此提供第三方公司制作的HDRP项目的截图。不过大家可以前往以下两个网址查看相关游戏截图。
● System Shock 3(网络奇兵3):https://otherside-e.com/wp/games/system-shock-3/
● Oddworld: SoulStorm(奇异世界:灵魂风暴):http://www.oddworld.com/soulstorm/
我们在本书中也为大家准备了两个HDRP项目用于学习,图1.8和图1.9是它们的截图。
(1)市政厅办公室场景(室内)
图1.8 《市政厅办公室》示例工程截图
(2)斯蓬扎场景(室内+室外)
图1.9 《斯蓬扎》示例工程截图
想知道如何在Unity中实现上述画面的渲染效果吗?如果是,那就让我们一起开始Unity HDRP学习之旅吧!