高级 OpenGL 设置

可以在“可视化”>“高级 OpenGL 设置”下找到以下选项。

实时阴影

仅在 OpenGL 模式下可用。

激活/取消激活实时阴影。

环境光遮挡阴影

激活环境光遮挡计算。

环境光遮挡又称柔和全局照明。它在间隙和角落上生成阴影;这使场景照明在 OpenGL 渲染模式下变得更加逼真。

遮挡光

场景在计算时由 HDR 文件从环境节点照亮;它可以在场景中没有任何其他光源的情况下工作。在计算时隐藏的所有对象都将变暗。

环境光遮挡计算是一个预处理过程,在数据准备过程中进行。计算得出的环境光遮挡结果在几何体的顶点(存储在纹理坐标 #7 和 #8 中)上烘焙。

计算阴影的平滑度取决于多边形网格分辨率。因此 VRED 提供多种方式来提高低质量模型的质量,例如,细分和预定义质量预设。

屏幕空间环境光遮挡设置

屏幕空间环境光遮挡设置

注意:

对于 2021.3 版,我们提高了渲染时的 SSAO(屏幕空间环境光遮挡)质量以显著提高质量,同时减少瑕疵以及增加调整外观的可能性。

打开“屏幕空间环境光遮挡设置”对话框,以启用 SSAO 并定义以下选项:

启用

启用屏幕空间环境光遮挡。

采样质量

设置用于计算环境光遮挡的采样质量。

半径

设置用于计算环境光遮挡的半径(采用世界空间)。虚拟半球半径以外的遮挡将被忽略。但是,由于这是屏幕空间效果,因此存在很多限制。

重要信息:

如果半径太大,将不产生效果。

截止角

防止因深度通道不准确而在平坦曲面上出现自身阴影。此项设置截止角以免在平滑曲率的曲面上产生阴影。如果曲面平面与采样点矢量之间的角度小于截止角,则将忽略采样。

强度

设置遮挡的暗度。该值越高,阴影越暗。

模糊量

应用于遮挡的模糊量。

SSAO 提供了一种有效、实时的烘焙环境光遮挡 (AO) 近似方法。虽然 SSAO 永远没有预计算的 AO 那么好,甚至不如烘焙照明和阴影,但是 SSAO 非常适合用于快速预览。

边保留

设置模糊过滤器的边保留因子。

  • 值为 0 将忽略深度通道中的任何不连续性并过滤所有内容。
  • 值为 1 将仅过滤深度完全相同的值。

几何体灯光源

仅在 OpenGL 渲染模式下,且仅当选择了“实时阴影”时才处于活动状态。

将自发光几何体视为光源。

背面消隐

激活/取消激活背面消隐。背面消隐仅渲染法线指向摄影机方向的面。

遮挡消隐

仅渲染可见几何体;渲染引擎在渲染时排除其他对象所隐藏的多边形/面片。

仅深度过程

仅使用深度值渲染一次场景。它可用于优化复杂着色器。

透明度模式

渲染场景一次,应用以下透明度模式之一:“对象排序”(默认)和“深度剥离”。选择“深度剥离”后,选择“透明度设置”以确定要剥的层数。

视频字幕:为了在 OpenGL 中获得自交透明对象的像素校正结果,我们还添加了“对象排序”,即所谓的“深度剥离”。这也可以解决透明材质排序错误的问题。使用滑块调整应计算的层数。

对象排序

如果您认为性能比正确的结果更重要,或者没有相交的透明对象或与自身相交的透明对象,请选择“对象排序”。它会启用对象排序透明度,场景中的每个对象会从后到前一次渲染一个。可以通过“材质编辑器”>“公用”选项卡中的排序键选项覆盖排序。

深度剥离

如果场景中有相交的透明对象或与自身相交的透明对象,请使用“深度剥离”。

“对象排序”和“深度剥离”

深度剥离用于与顺序无关的透明度以及没有排序的透明曲面的每像素校正混合。以像素级精确度渲染具有复杂相交透明对象(如车头灯)的图像。

不使用深度剥离 使用深度剥离
不使用深度剥离 使用深度剥离

深度剥离如何工作?

深度剥离透明度会通过多个过程渲染每像素透明度。在每个过程中,将剥离下一个透明层,并与上一层混合。VRED 从后到前对层进行剥离,以获得正确的结果。因此,如果有三层玻璃(如车头灯),但“深度剥离”仅设置为两层,则仅会看到距摄影机最远的两层。不会渲染所有剩余层。

但是,深度剥离带来的优势会降低性能。尝试选择要剥离的最小层数以完全捕获场景。对于许多场景,通过启用遮挡消隐可以显著提高性能:“可视化”>“高级 OpenGL 设置”>“遮挡消隐”。

我的透明材质在哪里?

由于环境的阴影平面是透明材质,因此它也由深度过程渲染。因此,如果启用“深度剥离”,但设置为单个层,则无论何时从将阴影平面放置在它们后面的某个角度查看,场景中的所有透明材质都会消失。如果遇到此问题,请将层数设置为较大的值,例如 8。

何时使用深度剥离

当排序无法生成正确的透明度时,如果在以下情况下,建议使用“深度剥离”。

  • 当透明几何体自遮挡时
  • 当两个或多个透明对象相交时,其中一个对象的某些部分位于另一个对象的前面,而其他部分位于另一个对象的后面

透明度设置

打开“透明度设置”对话框,以设置剥离的层数。这可与深度剥离结合使用。默认的过程数(即,要剥离的层数)为 8,从后到前执行剥离。使用滑块将值设置为 0 到 32。请注意,如果需要,可以在滑块字段中手动输入超出此范围的值。

“透明度设置”对话框