美文网首页
体积的使用 光线追踪

体积的使用 光线追踪

作者: 暴走TA | 来源:发表于2021-03-21 18:41 被阅读0次

简介: Unity HDRP 在 Unity2019 版已经支持光线追踪了,在设置中开启光线追踪后(开启方法),需要在场景中添加光线追踪的体积才会真正的生效。
版本:Unity2019.4.12f1 HDRP 7.5.1

准备

  • 在项目中开启光线追踪 开启方法
  • 给我们场景中的体积组件添加光线追踪功能,注意光线追踪在体积内的功能名称为 PathTracing
  • 项目开启光线追踪后,之前的一些效果都会有相对应的光线追踪版本。
    1. 基础的光线追踪渲染 路径追踪 (开启后,下面的光追版本都不会再有效果)
    2. 高效模拟金属反射的 递归追踪
    3. AO 有光线追踪版本
    4. 接触阴影有光线追踪版本
    5. 全局光照有光线追踪版本
    6. 反射有光线追踪版本
添加光线追踪功能,并开启

Path Tracing 路径追踪渲染

  • Enable 勾选后开启光线追踪功能,注意需要项目开启光线追踪功能,和硬件支持光线追踪功能
  • LayerMask 参与光线追踪运算的物体层级。不在指定层级内的物体是不会参与渲染的
立方体不在Default层内,layerMask只设置了Default,所以在画面内是看不见立方体的
  • MaxiMumSamples 最大采样数量,值越大画面效果越好,单帧渲染耗时越长
16的采样数量
2048的采样数量
  • MinimumDepth 最小采样弹射次数
  • MaximumDepth 最大采样弹射次数,注意:如果只想要直接光照,可以将此值和 Minimum Depth 设置为 1。如果只想可视化间接光照(仅在第二次反弹时可见),可以将这两者都设置为 2
只有直接光照,没有间接光照 有一次反弹的间接光照 只有间接光照没有直接光照 弹射次数过少时,反射的反射内容是黑色的 增大弹射次数,反射的反射内容更详细了

*MaximumIntensity 最大强度,设置允许光线在弹射过程中能积累的最大亮度,防止出现孤立的过爆像素亮点。

RecursiveRendering 递归渲染

  • 开启路径追踪(Pathtracing)后,这个功能不再有效果。
  • 添加 RecursiveRendering 到我们的体积组件,并启用
  • 需要使用递归追踪的物体的材质必须手动指认 RenderingPass 为 RayTracing
指定要使用递归渲染的物体材质,RenderingPass 为 Ratracing 递归追踪参数界面
  • Enable 勾选后开启递归追踪功能
  • LayerMask 允许使用递归追踪功能的层级,一个物体要想使用递归追踪功能,除了要设置材质上的RenderingPass 外,其层级还有位于本 LayerMask 设置的层级内
  • MaxDepth 最大追踪深度,即采样的弹射次数
最大弹射次数设置为1 最大弹射次数设置为2 最大弹射次数设置为6
  • RayLength 光线长度,超过这个长度的需要光线追踪的物体不会被渲染出来。
光线长度被缩减为2.8后,远处的物体不再渲染

AO 的光线追踪版

  • 开启光线追踪后,面板参数会有较大的变化,我们单拿一个小节来讲解
开启光线追踪之后的AO参数面板
  • Intensity AO 强度,值越高,AO 效果越明显
  • DirectLightingStrength AO 对直射光的照亮范围的影响,值越大直射光照亮的范围内AO效果越明显,值为 0 时,直射光照射范围内没有AO效果
  • LayerMsak 指定会产生AO的物体所在的层级,例如我们将下图的盒子放到别的层级,AO的这个属性只选Defaut , 则会发现,盒子不会对其它物体产生 AO, 但是盒子依然能接受AO效果。
盒子不在Default层,所以盒子没有对木棍和地面产生AO
  • RayLength 探测射线的长度。指光线追踪在计算AO时用来检测周围物体的探测线的长度,这个值可以理解为产生AO的距离。值越大,AO范围越大,越能让离得更远的两个物体产生AO。
射线长度为 0.5
射线长度为4
  • SampleCount 采样次数,简单理解就是一个像素点要发射多少射线来探测周边进行AO计算,数量越多消耗越大,效果越好,数量越少效果越差。
5条射线采样
64条射线采样
  • Denoise 降噪,通过时间积累计算来为AO效果降噪,可以在采样数低的情况下获得较好的效果。
  • DenosieRadius 降噪计算范围,建议设置为两三噪点之间的距离即可。在开启 Denosie 后可以进行配置。
16次采样,0.1 的降噪距离

接触阴影光线追踪版

  • 在场景的光源的属性面板上打开 Shadows > Contact Shadows 下的 Raytracing 即可,将ContactShadows 下的 Enable 设置为Custom,然后勾选 RayTracing 即可
开启灯光的接触阴影的光线追踪版本 无接触阴影 普通接触阴影 光线追踪版接触阴影

Global Illumination 光追版全局光照

  • 给体积组件添加 Global Illumination 功能
  • 开启后默认参数很是惨怛
光追版全局光照
  • LayerMask 设置参与光线追踪版全局光照的物体层级,只有在指定的层级内的物体才会参与全局光照的计算。层级外的物体有全局关照效果,但是不影响全局光照计算,我们给CUBE 设置蓝色自发光,看一下对比效果。
不包含 CUBE 所在的层级 包含CUBE 所在的层级
  • RayLength 光线长度,其实是指在这个范围内的物体会对全局光照做出贡献。

  • ClampValue 光线在追踪过程成中能积累的最大值裁剪。

最大值为1时对全局光照的影响 最大值为5时对全局光照的影响
  • Mode模式 分为 性能模式和高画质模式
    1. Performance 性能模式
    2. Quality 高画质模式

  • FullResolution 全尺寸分辨率,勾选后计算使用全尺寸分辨进行光线追踪,性能会有消耗,精度会更高一些

  • UpScaleRadius 缩放半径,值越大 光斑模糊效果越强,可以柔化噪点

性能模式下的 半尺寸 小缩放 性能模式下的 全尺寸 大缩放
  • SampleCount 采样光线数量,值越大精度越高,效果越好,一般给 4 即可,就算给到最大噪点依然会存在,但是机器会很卡,一般建议给到 2 - 8 即可
  • BounceCount 弹射次数,值越大弹射次数越多,环境就会越偏亮一点,值再大也会有密密麻麻的噪点,建议给到 2 - 4 即可。
高画质模式 低采样效果 高采样高弹射效果,截图都卡
  • Denoise 勾选后开启降噪,开启后便可以柔化全局光照计算结果,使光照效果柔和。
  • HalfResolutionDenoiser 使用半尺寸进行除噪,效果一般,建议关掉
  • DenoiserRadius 第一遍除噪半径,建议设置大一点 比如 0.5 - 0.8
第一遍降噪之后
  • SecondDenoiserPass 第二遍降噪 勾选后开启第二次降噪。
  • SecondDenoiseRadius 第二遍降噪使用的半径 ,可根据实际效果控制大小,值越大模糊程度越大,光线越柔和
二次模糊之后的全局环境光效果

光线追踪版反射

  • 开启 Screen Space Reflection 的 RayTracing 属性即可
开启 Raytracing 属性
  • Minimum Smoothness 控制 HDRP 处理光线追踪反射的像素的最小平滑度值。如果像素的平滑度值小于此值,则 HDRP 会退回到反射层级视图中下一个可用的反射方法
  • Smoothness Fade Start 控制平滑度值,在该值处开始淡出平滑度控制的淡出。此淡化的范围是 [Min Smoothness, Smoothness Fade Start]。
  • Reflect Sky 开启后可以反射天空盒
  • LayerMask 指定可以计入反射运算的层级,位于指定层级的物体可以参与反射,否则不会被反射。
  • RayLength 反射效果计算距离,操作此距离的像素不再计算反射
反射距离为 1 反射距离为 5
  • ClampValue 发射光线能达到的最大强度,防止出现爆亮的像素点
  • Mode 反射模式 分为 性能模式和高画质模式
  • UpscaleRadius 向上缩放半径
  • FullResolution 全尺寸分辨率参与运算,勾选后精度有所提升
性能模式下 半尺寸 低缩放效果 性能模式下 全尺寸 高缩放效果
  • SampleCount 参与采样的光线数量,越大精度越高,设备越卡 建议值 2 - 4
  • BounceCount 弹射次数,越大反射层级越深,设备越卡 建议值 2 - 4
高画质模式下 低采样数 和低弹射数 高画质模式下 高采样绿 和高弹射次数
  • Dnoise 降噪,开启后会减少部分反射的噪点。
  • DenoiserRadius 降噪半径,可以根据实际情况设置。
未开降噪时的反射噪点 开启后噪点数明显减少

相关文章

  • 体积的使用 光线追踪

    简介: Unity HDRP 在 Unity2019 版已经支持光线追踪了,在设置中开启光线追踪后(开启方法[ht...

  • 3D渲染-光线追踪-加速结构

    一、回顾 Whitted-Style Ray Tracing使用递归的方式,做光线追踪。光线在场景中任何一个地方都...

  • 光线追踪介绍

    正向追踪 如果我们试着在计算机生成图像这一过程中模拟光线与物体的交互,那么我们除了明白光线会在物体表面反射外,还需...

  • 光线追踪介绍

    摘要图像渲染就是一个这样的过程,输入一组物体,输出一个像素矩阵。把这个像素矩阵输送给显卡,显示器上就可以显示出来图...

  • 实现光线追踪算法

    接下来我们介绍光线追踪算法,用于实现我们的第一个光线追踪器。 首先,我们可以发现自然实际中光线的传播只是大量从光源...

  • 光线追踪算法综述

    Problem Formulation Ray Tracing的目标是生成一张包含场景内物体,具有真实感的图像,因...

  • 221231 光线追踪练习

    烟火追着你冷去的时间追着你你不要逃,不要逃 钟声追着你没做完的梦追着你你不要逃,不要逃 所有双向反射函数都为你备好...

  • 关于光线追踪的科普

    距英伟达发布RTX系列显卡已经过了快一年了,一直想做一期关于光线追踪技术的科普,但拖延症晚期加上一直也没能抽出时间...

  • 基本的光线追踪器

    一个光线追踪器的伪代码形式为: 这里我们尝试用光线追踪算法画几个球,它们都应用了菲涅尔等式来计算反射和折射效果。 ...

  • 计算机仿真技术_1

    全局光照模型里面最著名的技术就是光线追踪算法(ray-tracing)。 所谓的光线追踪就是为了在全局光照模型下实...

网友评论

      本文标题:体积的使用 光线追踪

      本文链接:https://www.haomeiwen.com/subject/sfuxqltx.html