FidelityFX VRS
FidelityFX VRS
FidelityFX 可变速率着色运行时库。
Defines
FFX_VRS_VERSION_MAJOR
#define FFX_VRS_VERSION_MAJOR (1)FidelityFX VRS 主版本号。
来源: sdk/include/FidelityFX/host/ffx_vrs.h (第 38 行,第 9 列)
FFX_VRS_VERSION_MINOR
#define FFX_VRS_VERSION_MINOR (2)FidelityFX VRS 次版本号。
来源: sdk/include/FidelityFX/host/ffx_vrs.h (第 43 行,第 9 列)
FFX_VRS_VERSION_PATCH
#define FFX_VRS_VERSION_PATCH (0)FidelityFX VRS 修补版本号。
来源: sdk/include/FidelityFX/host/ffx_vrs.h (第 48 行,第 9 列)
FFX_VRS_CONTEXT_COUNT
#define FFX_VRS_CONTEXT_COUNT 1FidelityFX VRS 上下文计数。
定义 VRS 所需的内部效果上下文数量
来源: sdk/include/FidelityFX/host/ffx_vrs.h (第 55 行,第 9 列)
FFX_VRS_CONTEXT_SIZE
#define FFX_VRS_CONTEXT_SIZE (16536)以 32 位值为单位指定的上下文大小。
来源: sdk/include/FidelityFX/host/ffx_vrs.h (第 60 行,第 9 列)
函数
ffxVrsContextCreate
FFX_API FfxErrorCode ffxVrsContextCreate(FfxVrsContext *pContext, const FfxVrsContextDescription *pContextDescription)根据 FfxVrsContextDescription 结构体中设置的参数,创建一个 FidelityFX 可变着色上下文。
上下文结构体是与可变着色 API 交互的主要对象,负责管理 VRS 算法使用的内部资源。调用此 API 时,将通过 backendInterface 结构体中的指针进行多次调用。此后端将尝试检索设备功能,并创建 VRS 运行所需的内部资源和管道。根据创建 FfxVrsContext 时使用的具体配置,可能会通过回调函数请求不同的资源和管道集。
FfxVrsContext 在使用完毕后应销毁,通常在应用程序卸载或用户禁用可变着色时。要销毁 VRS 上下文,您应调用 ffxVrsContextDestroy。
参数
pContext(FfxVrsContext *) – [输出] 指向要填充的 FfxVrsContext 结构体的指针。pContextDescription(const FfxVrsContextDescription *) – [输入] 指向 FfxVrsContextDescription 结构体的指针。
返回: FFX_API FfxErrorCode
来源: sdk/include/FidelityFX/host/ffx_vrs.h (第 167 行,第 22 列)
ffxVrsContextDispatch
FFX_API FfxErrorCode ffxVrsContextDispatch(FfxVrsContext *pContext, const FfxVrsDispatchDescription *pDispatchDescription)向 FidelityFX VRS 上下文分派工作。
参数
pContext(FfxVrsContext *) – [输入] 指向要填充的 FfxVrsContext 结构体的指针。pDispatchDescription(const FfxVrsDispatchDescription *) – [输入] 指向 FfxVrsDispatchDescription 结构体的指针。
返回: FFX_API FfxErrorCode
来源: sdk/include/FidelityFX/host/ffx_vrs.h (第 182 行,第 22 列)
ffxVrsContextDestroy
FFX_API FfxErrorCode ffxVrsContextDestroy(FfxVrsContext *pContext)销毁 FidelityFX VRS 上下文。
参数
pContext(FfxVrsContext *) – [输入] 指向要销毁的 FfxVrsContext 结构体的指针。
返回: FFX_API FfxErrorCode
来源: sdk/include/FidelityFX/host/ffx_vrs.h (第 194 行,第 22 列)
ffxVrsGetImageSizeFromeRenderResolution
FFX_API FfxErrorCode ffxVrsGetImageSizeFromeRenderResolution(uint32_t *pImageWidth, uint32_t *pImageHeight, uint32_t renderWidth, uint32_t renderHeight, uint32_t shadingRateImageTileSize)一个辅助函数,用于根据渲染分辨率计算 ShadingRateImage 的大小。
参数
pImageWidth(uint32_t *) – [输出] 指向一个 uint32_t 的指针,该指针将保存计算出的图像宽度。pImageHeight(uint32_t *) – [输出] 指向一个 uint32_t 的指针,该指针将保存计算出的图像高度。renderWidth(uint32_t) – [输入] 渲染分辨率宽度。renderHeight(uint32_t) – [输入] 渲染分辨率高度。shadingRateImageTileSize(uint32_t) – [输入] ShadingRateImage 的图块大小。
返回: FFX_API FfxErrorCode
来源: sdk/include/FidelityFX/host/ffx_vrs.h (第 212 行,第 22 列)
ffxVrsGetEffectVersion
FFX_API FfxVersionNumber ffxVrsGetEffectVersion()查询效果版本号。
返回: 构建该效果的 SDK 版本。
返回: FFX_API FfxVersionNumber
来源: sdk/include/FidelityFX/host/ffx_vrs.h (第 220 行,第 26 列)
枚举
FfxVrsPass
enum FfxVrsPass构成 ShadingRateImage 生成算法的通道的枚举。
VRS 实现为一个单通道算法。每次调用 FfxScheduleGpuJobFunc 回调函数将对应一个图像生成任务。有关 VRS 内部工作原理的更全面描述,请参阅 VRS 参考文档。
值
FFX_VRS_PASS_IMAGEGEN
FFX_VRS_PASS_IMAGEGEN = 0生成 ShadingRateImage 的通道。
FFX_VRS_PASS_COUNT
VRS 执行的通道数。
来源: sdk/include/FidelityFX/host/ffx_vrs.h (第 76 行,第 1 列)
FfxVrsInitializationFlagBits
enum FfxVrsInitializationFlagBits创建 FfxVrsContext 时使用的位标志枚举。请参阅 FfxVrsContextDescription。
值
FFX_VRS_ALLOW_ADDITIONAL_SHADING_RATES
FFX_VRS_ALLOW_ADDITIONAL_SHADING_RATES = (1 <<0)一个位,指示是否应启用附加着色率。
来源: sdk/include/FidelityFX/host/ffx_vrs.h (第 86 行,第 1 列)
依赖项: FfxVrsContext, FfxVrsContextDescription, FfxVrsDispatchDescription