跳至内容

FidelityFX 组合自适应计算环境光遮蔽 (CACAO)

alt text

此示例演示了 FidelityFX 组合自适应计算环境光遮蔽技术的用法。

有关 FidelityFX CACAO 效果所依据技术的详细信息,请参阅相应的 技术文档

要求

  • Windows
  • DirectX(R)12
  • Vulkan(R)

UI 元素

此示例包含 UI 选项,可用于试验相关值和技术。下表总结了 UI 元素及其在示例中的控制功能。

元素名称描述
预设原生 - 自适应质量, 原生 - 高质量, 原生 - 中等质量, 原生 - 低质量, 原生 - 最低质量, 降采样 - 自适应质量, 降采样 - 高质量, 降采样 - 中等质量, 降采样 - 低质量, 降采样 - 最低质量选择质量并可在降采样和原生分辨率采样之间切换。
半径0 .. 10遮蔽球体的世界空间半径。半径越大,越远的物体对点的环境光遮蔽贡献越大。
阴影乘数0 .. 5阴影的线性乘数。值越高,阴影越强烈。
阴影幂0.5 .. 5阴影值的指数。值越大,阴影越暗。
阴影夹0 .. 1将阴影值限制在特定范围内。
地平线角度阈值0 .. 0.2在产生遮蔽所需的几何体与点之间的最小角度。调整此值有助于减少自阴影。
渐变消失起始距离1 .. 20效果开始渐变消失的在世界空间中的距离。
渐变消失结束距离1 .. 40效果结束渐变消失的在世界空间中的距离。
质量级别最高,高,中,低,最低确定 FidelityFX CACAO 生成的各种方面,包括用于生成屏幕空间环境光遮蔽 (SSAO) 的样本数量、生成 SSAO 的像素数量等。
自适应质量限制0.5 .. 1限制在自适应质量级别下采样的总样本数。
模糊通道数0 .. 8对原始 SSAO 输出运行的边缘敏感模糊的数量。
锐度0 .. 1锐度控制着模糊效果应有多少会溢出到边缘。
细节阴影强度0 .. 5根据边缘增加更精细的阴影。这些阴影在时间上不太稳定。
从缓冲区目标生成法线缓冲区开关:开/关启用后,法线缓冲区将从深度缓冲区生成。这意味着 SSAO 将仅以深度缓冲区作为输入。
使用降采样 SSAO开关:开/关启用后,SSAO 将以一半分辨率生成,而不是原生分辨率。
双边 Sigma 平方0 .. 10仅影响下采样 SSAO。值越高,模糊越大。
双边相似距离 Sigma0.1 .. 1仅影响下采样 SSAO。值越低,边缘越锐利。

设置 FidelityFX CACAO 效果

FidelityFX CACAO 着色器以几何渲染通道生成的深度缓冲区作为输入。它还可以选择性地输入几何渲染通道生成的法线缓冲区,否则将从深度缓冲区生成此信息。

ffx_cacao.h 文件包含效果上下文创建、分派、常量更新和上下文销毁函数。

请注意,该效果设计为可与 C++HLSLGLSL 一起使用。这些可以通过 #define 宏进行选择(见下文)。

C++

#define FFX_CPU
#include <gpu/ffx_core.h>
#include <gpu/ffx_cacao.h>

HLSL

#define FFX_GPU
#define FFX_HLSL
#include "ffx_core.h"
#include "ffx_cacao.h"

GLSL

#define FFX_GPU
#define FFX_GLSL
#include "ffx_core.h"
#include "ffx_cacao.h"

着色器选项

FidelityFX CACAO 的部分通道支持不同的选项。

支持的一个选项是使用 16 位浮点 (FP16) 数学运算,而不是 32 位。

着色器也可以在 Wave64 或 Wave32 中运行。着色器如何运行在很大程度上取决于执行的硬件平台,并在运行时确定。

最后,某些通道可以运行 应用智能 选项,从而为 应用双边上采样 等通道启用边缘感知执行。

示例控件和配置

有关示例控件、配置和 FidelityFX Cauldron Framework UI 元素的详细信息,请参阅 运行示例

另请参阅

© . This site is unofficial and not affiliated with AMD.