FidelityFX Brixelizer GI
FidelityFX Brixelizer GI
FidelityFX Brixelizer GI 运行时库。
Defines
FFX_BRIXELIZER_GI_VERSION_MAJOR
#define FFX_BRIXELIZER_GI_VERSION_MAJOR (1)FidelityFX Brixelizer GI 主版本。
源: sdk/include/FidelityFX/host/ffx_brixelizergi.h (第 38 行, 第 9 列)
FFX_BRIXELIZER_GI_VERSION_MINOR
#define FFX_BRIXELIZER_GI_VERSION_MINOR (0)FidelityFX Brixelizer GI 次版本。
源: sdk/include/FidelityFX/host/ffx_brixelizergi.h (第 43 行, 第 9 列)
FFX_BRIXELIZER_GI_VERSION_PATCH
#define FFX_BRIXELIZER_GI_VERSION_PATCH (1)FidelityFX Brixelizer GI 修订版本。
源: sdk/include/FidelityFX/host/ffx_brixelizergi.h (第 48 行, 第 9 列)
FFX_BRIXELIZER_GI_CONTEXT_SIZE
#define FFX_BRIXELIZER_GI_CONTEXT_SIZE (210000)以 32 位值为单位指定的上下文大小。
源: sdk/include/FidelityFX/host/ffx_brixelizergi.h (第 53 行, 第 9 列)
FFX_BRIXELIZER_GI_CONTEXT_COUNT
#define FFX_BRIXELIZER_GI_CONTEXT_COUNT 1FidelityFX Brixelizer GI 上下文计数。
定义 Brixelizer 所需的内部效果上下文数量
源: sdk/include/FidelityFX/host/ffx_brixelizergi.h (第 60 行, 第 9 列)
函数
ffxBrixelizerGIGetContextSize
inline size_t ffxBrixelizerGIGetContextSize()获取 FfxBrixelizerGIContext 结构体所需的字节大小。请注意,此函数是为了保持一致性而提供的,FfxBrixelizerGIContext 的大小是已知的编译时值,可以使用 sizeof(FfxBrixelizerGIContext) 获取。
返回: FfxBrixelizerGIContext 结构体的大小(字节)。
返回: size_t
属性: inline
源: sdk/include/FidelityFX/host/ffx_brixelizergi.h (第 247 行, 第 15 列)
ffxBrixelizerGIContextCreate
FFX_API FfxErrorCode ffxBrixelizerGIContextCreate(FfxBrixelizerGIContext *pContext, const FfxBrixelizerGIContextDescription *pContextDescription)根据 FfxBrixelizerGIContextDescription 结构体中指定的参数创建 FidelityFX Brixelizer GI 上下文。
上下文结构体是与 Brixelizer GI API 交互的主要对象,负责管理 Brixelizer GI 算法使用的内部资源。调用此 API 时,将通过 backendInterface 结构体中的指针进行多次调用。此后端将尝试检索设备功能,并创建 Brixelizer GI 所需的内部资源和管道。
根据通过 pContextDescription 传递的参数,回调函数可能会请求不同的资源和管道集。
FfxBrixelizerGIContext 应在使用完毕后销毁。要销毁上下文,应调用 ffxBrixelizerGIContextDestroy。
pContext
指向要填充的 FfxBrixelizerGIContext 的指针。
pContextDescription
指向指定上下文创建参数的 FfxBrixelizerGIContextDescription 的指针。
FFX_OK
操作成功完成。
FFX_ERROR_INVALID_POINTER
由于 pContext 或 pContextDescription 为 NULL,操作失败。
FFX_ERROR_INCOMPLETE_INTERFACE
由于 pContextDescription->backendInterface 未完全指定,操作失败。
FFX_ERROR_BACKEND_API_ERROR
由于后端出错,操作失败。
参数
pContext(FfxBrixelizerGIContext *) – [输出] 指向要填充的 FfxBrixelizerGIContext 的指针。pContextDescription(const FfxBrixelizerGIContextDescription *) – [输入] 指向指定上下文创建参数的 FfxBrixelizerGIContextDescription 的指针。
返回: FFX_API FfxErrorCode
源: sdk/include/FidelityFX/host/ffx_brixelizergi.h (第 281 行, 第 22 列)
ffxBrixelizerGIContextDestroy
FFX_API FfxErrorCode ffxBrixelizerGIContextDestroy(FfxBrixelizerGIContext *pContext)销毁 FidelityFX Brixelizer GI 上下文。
参数
pContext(FfxBrixelizerGIContext *) – [输出] 指向要销毁的 FfxBrixelizerGIContext 结构体的指针。
返回: FFX_API FfxErrorCode
源: sdk/include/FidelityFX/host/ffx_brixelizergi.h (第 293 行, 第 22 列)
ffxBrixelizerGIContextDispatch
FFX_API FfxErrorCode ffxBrixelizerGIContextDispatch(FfxBrixelizerGIContext *pContext, const FfxBrixelizerGIDispatchDescription *pDispatchDescription, FfxCommandList pCommandList)更新 Brixelizer GI,将 GPU 命令记录到命令列表中。
参数
pContext(FfxBrixelizerGIContext *)pDispatchDescription(const FfxBrixelizerGIDispatchDescription *) – [输入] 指向描述要计算的分派的 FfxBrixelizerGIDispatchDescription 的指针。pCommandList(FfxCommandList) – [输入/输出] 要写入 GPU 命令的 FfxCommandList。
返回: FFX_API FfxErrorCode
源: sdk/include/FidelityFX/host/ffx_brixelizergi.h (第 305 行, 第 22 列)
ffxBrixelizerGIContextDebugVisualization
FFX_API FfxErrorCode ffxBrixelizerGIContextDebugVisualization(FfxBrixelizerGIContext *pContext, const FfxBrixelizerGIDebugDescription *pDebugDescription, FfxCommandList pCommandList)从 FfxBrixelizerGIContext 创建调试可视化。
参数
pContext(FfxBrixelizerGIContext *)pDebugDescription(const FfxBrixelizerGIDebugDescription *) – [输入] 指向描述要绘制的调试可视化的 FfxBrixelizerGIDebugDescription 的指针。pCommandList(FfxCommandList) – [输入/输出] 要写入 GPU 命令的 FfxCommandList。
返回: FFX_API FfxErrorCode
源: sdk/include/FidelityFX/host/ffx_brixelizergi.h (第 317 行, 第 22 列)
ffxBrixelizerGIGetEffectVersion
FFX_API FfxVersionNumber ffxBrixelizerGIGetEffectVersion()查询效果版本号。
返回: 构建该效果的 SDK 版本。
返回: FFX_API FfxVersionNumber
源: sdk/include/FidelityFX/host/ffx_brixelizergi.h (第 325 行, 第 26 列)
枚举
FfxBrixelizerGIFlags
enum FfxBrixelizerGIFlags创建 FfxBrixelizerGIContext 时使用的标志位枚举。请参阅 FfxBrixelizerGIContextDescription。
值
FFX_BRIXELIZER_GI_FLAG_DEPTH_INVERTED
FFX_BRIXELIZER_GI_FLAG_DEPTH_INVERTED = (1 <<0)表示输入资源以反转深度生成。
FFX_BRIXELIZER_GI_FLAG_DISABLE_SPECULAR
FFX_BRIXELIZER_GI_FLAG_DISABLE_SPECULAR = (1 <<1)禁用镜面 GI。
FFX_BRIXELIZER_GI_FLAG_DISABLE_DENOISER
FFX_BRIXELIZER_GI_FLAG_DISABLE_DENOISER = (1 <<2)禁用降噪。仅允许在原生分辨率下使用。
源: sdk/include/FidelityFX/host/ffx_brixelizergi.h (第 87 行, 第 1 列)
FfxBrixelizerGIInternalResolution
enum FfxBrixelizerGIInternalResolutionFidelityFX Brixelizer GI 支持的质量模式枚举。
值
FFX_BRIXELIZER_GI_INTERNAL_RESOLUTION_NATIVE
以原生分辨率输出 GI。
FFX_BRIXELIZER_GI_INTERNAL_RESOLUTION_75_PERCENT
以原生分辨率的 75% 输出 GI。
FFX_BRIXELIZER_GI_INTERNAL_RESOLUTION_50_PERCENT
以原生分辨率的 50% 输出 GI。
FFX_BRIXELIZER_GI_INTERNAL_RESOLUTION_25_PERCENT
以原生分辨率的 25% 输出 GI。
源: sdk/include/FidelityFX/host/ffx_brixelizergi.h (第 97 行, 第 1 列)
FfxBrixelizerGIDebugMode
enum FfxBrixelizerGIDebugModeBrixelizer GI 调试可视化所使用的输出模式枚举。请参阅 FfxBrixelizerGIDebugDescription。
值
FFX_BRIXELIZER_GI_DEBUG_MODE_RADIANCE_CACHE
绘制辐射缓存。
FFX_BRIXELIZER_GI_DEBUG_MODE_IRRADIANCE_CACHE
绘制辐照度缓存。
源: sdk/include/FidelityFX/host/ffx_brixelizergi.h (第 171 行, 第 1 列)
FfxBrixelizerGIPass
enum FfxBrixelizerGIPass构成 Brixelizer 算法的所有通道的枚举。
Brixelizer GI 实现为几个计算通道的复合,每个通道计算最终结果的关键部分。对 FfxBrixelizerScheduleGpuJobFunc 回调函数的每次调用都将对应于 FfxBrixelizerPass 中包含的一个通道。有关每个通道的更全面描述,请参阅 Brixelizer 参考文档。
值
FFX_BRIXELIZER_GI_PASS_BLUR_X
FFX_BRIXELIZER_GI_PASS_BLUR_Y
FFX_BRIXELIZER_GI_PASS_CLEAR_CACHE
FFX_BRIXELIZER_GI_PASS_EMIT_IRRADIANCE_CACHE
FFX_BRIXELIZER_GI_PASS_EMIT_PRIMARY_RAY_RADIANCE
FFX_BRIXELIZER_GI_PASS_FILL_SCREEN_PROBES
FFX_BRIXELIZER_GI_PASS_INTERPOLATE_SCREEN_PROBES
FFX_BRIXELIZER_GI_PASS_PREPARE_CLEAR_CACHE
FFX_BRIXELIZER_GI_PASS_PROJECT_SCREEN_PROBES
FFX_BRIXELIZER_GI_PASS_PROPAGATE_SH
FFX_BRIXELIZER_GI_PASS_REPROJECT_GI
FFX_BRIXELIZER_GI_PASS_REPROJECT_SCREEN_PROBES
FFX_BRIXELIZER_GI_PASS_SPAWN_SCREEN_PROBES
FFX_BRIXELIZER_GI_PASS_SPECULAR_PRE_TRACE
FFX_BRIXELIZER_GI_PASS_SPECULAR_TRACE
FFX_BRIXELIZER_GI_PASS_DEBUG_VISUALIZATION
FFX_BRIXELIZER_GI_PASS_GENERATE_DISOCCLUSION_MASK
FFX_BRIXELIZER_GI_PASS_DOWNSAMPLE
FFX_BRIXELIZER_GI_PASS_UPSAMPLE
FFX_BRIXELIZER_GI_PASS_COUNT
Brixelizer GI 执行的通道数。
源: sdk/include/FidelityFX/host/ffx_brixelizergi.h (第 214 行, 第 1 列)
依赖项
此模块依赖于