简介: Unity HDRP 在 Unity2019 版已经支持光线追踪了,在设置中开启光线追踪后(开启方法),需要在场景中添加光线追踪的体积才会真正的生效。
版本:Unity2019.4.12f1 HDRP 7.5.1
准备
- 在项目中开启光线追踪 开启方法
- 给我们场景中的体积组件添加光线追踪功能,注意光线追踪在体积内的功能名称为 PathTracing
- 项目开启光线追踪后,之前的一些效果都会有相对应的光线追踪版本。
1. 基础的光线追踪渲染 路径追踪 (开启后,下面的光追版本都不会再有效果)
2. 高效模拟金属反射的 递归追踪
3. AO 有光线追踪版本
4. 接触阴影有光线追踪版本
5. 全局光照有光线追踪版本
6. 反射有光线追踪版本
![](https://img.haomeiwen.com/i19189157/29da89d3d4c1be73.png)
Path Tracing 路径追踪渲染
- Enable 勾选后开启光线追踪功能,注意需要项目开启光线追踪功能,和硬件支持光线追踪功能
- LayerMask 参与光线追踪运算的物体层级。不在指定层级内的物体是不会参与渲染的
![](https://img.haomeiwen.com/i19189157/d69b6d0716371197.png)
- MaxiMumSamples 最大采样数量,值越大画面效果越好,单帧渲染耗时越长
![](https://img.haomeiwen.com/i19189157/21c0250bb0c5489c.png)
![](https://img.haomeiwen.com/i19189157/937132dfab8f1b94.png)
- MinimumDepth 最小采样弹射次数
- MaximumDepth 最大采样弹射次数,注意:如果只想要直接光照,可以将此值和 Minimum Depth 设置为 1。如果只想可视化间接光照(仅在第二次反弹时可见),可以将这两者都设置为 2
![](https://img.haomeiwen.com/i19189157/4c69fb2334ad589a.png)
![](https://img.haomeiwen.com/i19189157/6e20ccf7e4fc1d4a.png)
![](https://img.haomeiwen.com/i19189157/db18f32ea252fccf.png)
![](https://img.haomeiwen.com/i19189157/ea9d2fb37782dd66.png)
![](https://img.haomeiwen.com/i19189157/b377bc283a6a963d.png)
*MaximumIntensity 最大强度,设置允许光线在弹射过程中能积累的最大亮度,防止出现孤立的过爆像素亮点。
RecursiveRendering 递归渲染
- 开启路径追踪(Pathtracing)后,这个功能不再有效果。
- 添加 RecursiveRendering 到我们的体积组件,并启用
- 需要使用递归追踪的物体的材质必须手动指认 RenderingPass 为 RayTracing
![](https://img.haomeiwen.com/i19189157/ca16f0eee5b6d6f8.png)
![](https://img.haomeiwen.com/i19189157/3f0850ed1f27bf78.png)
- Enable 勾选后开启递归追踪功能
- LayerMask 允许使用递归追踪功能的层级,一个物体要想使用递归追踪功能,除了要设置材质上的RenderingPass 外,其层级还有位于本 LayerMask 设置的层级内
- MaxDepth 最大追踪深度,即采样的弹射次数
![](https://img.haomeiwen.com/i19189157/e6f7b1f02ba8e51f.png)
![](https://img.haomeiwen.com/i19189157/aaaa25e63472d24a.png)
![](https://img.haomeiwen.com/i19189157/606dc4f17cf9beca.png)
- RayLength 光线长度,超过这个长度的需要光线追踪的物体不会被渲染出来。
![](https://img.haomeiwen.com/i19189157/9a3cc91978cb03a9.png)
AO 的光线追踪版
- 开启光线追踪后,面板参数会有较大的变化,我们单拿一个小节来讲解
![](https://img.haomeiwen.com/i19189157/c7e12cbc28bec134.png)
- Intensity AO 强度,值越高,AO 效果越明显
- DirectLightingStrength AO 对直射光的照亮范围的影响,值越大直射光照亮的范围内AO效果越明显,值为 0 时,直射光照射范围内没有AO效果
- LayerMsak 指定会产生AO的物体所在的层级,例如我们将下图的盒子放到别的层级,AO的这个属性只选Defaut , 则会发现,盒子不会对其它物体产生 AO, 但是盒子依然能接受AO效果。
![](https://img.haomeiwen.com/i19189157/e78bd0d7aca7fd63.png)
- RayLength 探测射线的长度。指光线追踪在计算AO时用来检测周围物体的探测线的长度,这个值可以理解为产生AO的距离。值越大,AO范围越大,越能让离得更远的两个物体产生AO。
![](https://img.haomeiwen.com/i19189157/ade54b54013e58cd.png)
![](https://img.haomeiwen.com/i19189157/2cb66e3c87e01aaf.png)
- SampleCount 采样次数,简单理解就是一个像素点要发射多少射线来探测周边进行AO计算,数量越多消耗越大,效果越好,数量越少效果越差。
![](https://img.haomeiwen.com/i19189157/4e82709b847839f5.png)
![](https://img.haomeiwen.com/i19189157/92a720cc8e23384c.png)
- Denoise 降噪,通过时间积累计算来为AO效果降噪,可以在采样数低的情况下获得较好的效果。
- DenosieRadius 降噪计算范围,建议设置为两三噪点之间的距离即可。在开启 Denosie 后可以进行配置。
![](https://img.haomeiwen.com/i19189157/697fe4a9914c4160.png)
接触阴影光线追踪版
- 在场景的光源的属性面板上打开 Shadows > Contact Shadows 下的 Raytracing 即可,将ContactShadows 下的 Enable 设置为Custom,然后勾选 RayTracing 即可
![](https://img.haomeiwen.com/i19189157/6d03998a39882620.png)
![](https://img.haomeiwen.com/i19189157/5fd93b0ceb18a8b1.png)
![](https://img.haomeiwen.com/i19189157/6b0d6b1290623949.png)
![](https://img.haomeiwen.com/i19189157/de260b8f92f926eb.png)
Global Illumination 光追版全局光照
- 给体积组件添加 Global Illumination 功能
- 开启后默认参数很是惨怛
![](https://img.haomeiwen.com/i19189157/7c095309ca2ceed9.png)
- LayerMask 设置参与光线追踪版全局光照的物体层级,只有在指定的层级内的物体才会参与全局光照的计算。层级外的物体有全局关照效果,但是不影响全局光照计算,我们给CUBE 设置蓝色自发光,看一下对比效果。
![](https://img.haomeiwen.com/i19189157/0da5f8e92c78d210.png)
![](https://img.haomeiwen.com/i19189157/7be7b1aed5d09763.png)
-
RayLength 光线长度,其实是指在这个范围内的物体会对全局光照做出贡献。
-
ClampValue 光线在追踪过程成中能积累的最大值裁剪。
![](https://img.haomeiwen.com/i19189157/669b0b6a286b5e6e.png)
![](https://img.haomeiwen.com/i19189157/5921e485ffea1263.png)
-
Mode模式 分为 性能模式和高画质模式
1. Performance 性能模式
2. Quality 高画质模式 -
FullResolution 全尺寸分辨率,勾选后计算使用全尺寸分辨进行光线追踪,性能会有消耗,精度会更高一些
-
UpScaleRadius 缩放半径,值越大 光斑模糊效果越强,可以柔化噪点
![](https://img.haomeiwen.com/i19189157/87990aacf77fe16d.png)
![](https://img.haomeiwen.com/i19189157/b4cc49cfe7aa0e53.png)
- SampleCount 采样光线数量,值越大精度越高,效果越好,一般给 4 即可,就算给到最大噪点依然会存在,但是机器会很卡,一般建议给到 2 - 8 即可
- BounceCount 弹射次数,值越大弹射次数越多,环境就会越偏亮一点,值再大也会有密密麻麻的噪点,建议给到 2 - 4 即可。
![](https://img.haomeiwen.com/i19189157/18f91b0623640c50.png)
![](https://img.haomeiwen.com/i19189157/bad10796664f8e69.png)
- Denoise 勾选后开启降噪,开启后便可以柔化全局光照计算结果,使光照效果柔和。
- HalfResolutionDenoiser 使用半尺寸进行除噪,效果一般,建议关掉
- DenoiserRadius 第一遍除噪半径,建议设置大一点 比如 0.5 - 0.8
![](https://img.haomeiwen.com/i19189157/63961d3654a89b68.png)
- SecondDenoiserPass 第二遍降噪 勾选后开启第二次降噪。
- SecondDenoiseRadius 第二遍降噪使用的半径 ,可根据实际效果控制大小,值越大模糊程度越大,光线越柔和
![](https://img.haomeiwen.com/i19189157/97e9082aff1ff871.png)
光线追踪版反射
- 开启 Screen Space Reflection 的 RayTracing 属性即可
![](https://img.haomeiwen.com/i19189157/135c9aa1f04a7f0c.png)
- Minimum Smoothness 控制 HDRP 处理光线追踪反射的像素的最小平滑度值。如果像素的平滑度值小于此值,则 HDRP 会退回到反射层级视图中下一个可用的反射方法
- Smoothness Fade Start 控制平滑度值,在该值处开始淡出平滑度控制的淡出。此淡化的范围是 [Min Smoothness, Smoothness Fade Start]。
- Reflect Sky 开启后可以反射天空盒
- LayerMask 指定可以计入反射运算的层级,位于指定层级的物体可以参与反射,否则不会被反射。
- RayLength 反射效果计算距离,操作此距离的像素不再计算反射
![](https://img.haomeiwen.com/i19189157/9b0b6bb429e70c36.png)
![](https://img.haomeiwen.com/i19189157/e256136dfe71e4fe.png)
- ClampValue 发射光线能达到的最大强度,防止出现爆亮的像素点
- Mode 反射模式 分为 性能模式和高画质模式
- UpscaleRadius 向上缩放半径
- FullResolution 全尺寸分辨率参与运算,勾选后精度有所提升
![](https://img.haomeiwen.com/i19189157/c2c42eb515c7c166.png)
![](https://img.haomeiwen.com/i19189157/13fede7d125f0501.png)
- SampleCount 参与采样的光线数量,越大精度越高,设备越卡 建议值 2 - 4
- BounceCount 弹射次数,越大反射层级越深,设备越卡 建议值 2 - 4
![](https://img.haomeiwen.com/i19189157/48847a4d0e3ce338.png)
![](https://img.haomeiwen.com/i19189157/775d08024257482f.png)
- Dnoise 降噪,开启后会减少部分反射的噪点。
- DenoiserRadius 降噪半径,可以根据实际情况设置。
![](https://img.haomeiwen.com/i19189157/3fabc8699ef75413.png)
![](https://img.haomeiwen.com/i19189157/c2109ad4f2ae0764.png)
网友评论