跳至内容

FidelityFX SPD

导航: SDK效果组件

FidelityFX SPD

FidelityFX 单通道降采样器运行时库。

Defines

FFX_SPD_VERSION_MAJOR

#define FFX_SPD_VERSION_MAJOR (2)

FidelityFX SPD 主版本号。

来源: sdk/include/FidelityFX/host/ffx_spd.h (第 38 行, 第 9 列)

FFX_SPD_VERSION_MINOR

#define FFX_SPD_VERSION_MINOR (2)

FidelityFX SPD 次版本号。

来源: sdk/include/FidelityFX/host/ffx_spd.h (第 43 行, 第 9 列)

FFX_SPD_VERSION_PATCH

#define FFX_SPD_VERSION_PATCH (0)

FidelityFX SPD 修补版本号。

来源: sdk/include/FidelityFX/host/ffx_spd.h (第 48 行, 第 9 列)

FFX_SPD_CONTEXT_COUNT

#define FFX_SPD_CONTEXT_COUNT 1

FidelityFX SPD 上下文数量。

定义 SPD 所需的内部效果上下文数量

来源: sdk/include/FidelityFX/host/ffx_spd.h (第 55 行, 第 9 列)

FFX_SPD_CONTEXT_SIZE

#define FFX_SPD_CONTEXT_SIZE (9300)

以 32 位值为单位指定的上下文大小。

来源: sdk/include/FidelityFX/host/ffx_spd.h (第 60 行, 第 9 列)

SPD_MAX_MIP_LEVELS

#define SPD_MAX_MIP_LEVELS 12

如果此值发生更改,则还需要反映在 ffx_spd_resources.h 中的资源数量变化。

来源: sdk/include/FidelityFX/host/ffx_spd.h (第 66 行, 第 9 列)

函数

ffxSpdContextCreate

FFX_API FfxErrorCode ffxSpdContextCreate(FfxSpdContext *pContext, const FfxSpdContextDescription *pContextDescription)

根据 FfxSpdContextDescription 结构中编程的参数,创建 FidelityFX 单通道降采样器上下文。

上下文结构是与单通道降采样器 API 交互的主要对象,并负责管理 SPD 算法使用的内部资源。调用此 API 时,将通过 backendInterface 结构中包含的指针进行多次调用。此后端将尝试检索设备功能,并创建 SPD 正常运行所需的内部资源和管道。根据创建 FfxSpdContext 时使用的具体配置,可能会通过回调函数请求不同的资源和管道集。

应在 SPD 的使用完毕时销毁 FfxSpdContext,通常在应用程序卸载或用户禁用 SPD 缩放时。要销毁 SPD 上下文,应调用 ffxSpdContextDestroy。

参数

  • pContextFfxSpdContext *)– [输出] 指向要填充的 FfxSpdContext 结构的指针。
  • pContextDescriptionconst FfxSpdContextDescription *)– [输入] 指向 FfxSpdContextDescription 结构的指针。

返回: FFX_API FfxErrorCode

来源: sdk/include/FidelityFX/host/ffx_spd.h (第 183 行, 第 22 列)

ffxSpdContextDispatch

FFX_API FfxErrorCode ffxSpdContextDispatch(FfxSpdContext *pContext, const FfxSpdDispatchDescription *pDispatchDescription)

将工作调度到 FidelityFX SPD 上下文中。

参数

  • pContextFfxSpdContext *)– [输出] 指向要填充的 FfxSpdContext 结构的指针。
  • pDispatchDescriptionconst FfxSpdDispatchDescription *)– [输入] 指向 FfxSpdDispatchDescription 结构的指针。

返回: FFX_API FfxErrorCode

来源: sdk/include/FidelityFX/host/ffx_spd.h (第 198 行, 第 22 列)

ffxSpdContextDestroy

FFX_API FfxErrorCode ffxSpdContextDestroy(FfxSpdContext *pContext)

销毁 FidelityFX SPD 上下文。

参数

  • pContextFfxSpdContext *)– [输出] 指向要销毁的 FfxSpdContext 结构的指针。

返回: FFX_API FfxErrorCode

来源: sdk/include/FidelityFX/host/ffx_spd.h (第 210 行, 第 22 列)

ffxSpdGetEffectVersion

FFX_API FfxVersionNumber ffxSpdGetEffectVersion()

查询效果版本号。

返回: 构建该效果的 SDK 版本。

返回: FFX_API FfxVersionNumber

来源: sdk/include/FidelityFX/host/ffx_spd.h (第 218 行, 第 26 列)

枚举

FfxSpdPass

enum FfxSpdPass

构成 SPD 算法的通道的枚举。

SPD 作为单通道算法实现。每次调用 FfxSPDScheduleGpuJobFunc 回调函数将对应一个降采样作业。有关 SPD 内部工作原理的更全面描述,请参阅 SPD 参考文档。

FFX_SPD_PASS_DOWNSAMPLE

FFX_SPD_PASS_DOWNSAMPLE = 0

一个用于降采样所有 mip 的通道。

FFX_SPD_PASS_COUNT

SPD 中的通道数量。

来源: sdk/include/FidelityFX/host/ffx_spd.h (第 81 行, 第 1 列)

FfxSpdInitializationFlagBits

enum FfxSpdInitializationFlagBits

创建 FfxSpdContext 时使用的位标志的枚举。请参阅 FfxSpdContextDescription。

FFX_SPD_SAMPLER_LOAD

FFX_SPD_SAMPLER_LOAD = (1 <<0)

一个标志,指示是否应使用资源加载(优先加载而不是采样器)

FFX_SPD_SAMPLER_LINEAR

FFX_SPD_SAMPLER_LINEAR = (1 <<1)

一个标志,指示是否应使用采样器加载资源。

FFX_SPD_WAVE_INTEROP_LDS

FFX_SPD_WAVE_INTEROP_LDS = (1 <<2)

一个标志,指示是否应使用 LDS。

FFX_SPD_WAVE_INTEROP_WAVE_OPS

FFX_SPD_WAVE_INTEROP_WAVE_OPS = (1 <<3)

一个标志,指示是否应使用 WAVE OPS(优先使用 wave ops 而不是 LDS)

FFX_SPD_MATH_NONPACKED

FFX_SPD_MATH_NONPACKED = (1 <<4)

一个标志,指示是否应使用浮点数学。

FFX_SPD_MATH_PACKED

FFX_SPD_MATH_PACKED = (1 <<5)

一个标志,指示是否应使用 16 位半精度浮点数学(优先使用)

来源: sdk/include/FidelityFX/host/ffx_spd.h (第 101 行, 第 1 列)

依赖项: FfxSpdContext, FfxSpdContextDescription, FfxSpdDispatchDescription

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