SDK Types
SDK Types
Structure and enumeration definitions used by the FidelityFX SDK.
Defines
FFX_MUTEX
#define FFX_MUTEX std::mutex
FidelityFX mutex wrapper.
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 63, column 9)
POPULATE_SHADER_BLOB_FFX
#define POPULATE_SHADER_BLOB_FFX(info, index)
Macro definition to copy header shader blob information into its SDK structural representation.
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 1171, column 9)
Typedefs
FfxDevice
typedef void* FfxDevice
A typedef representing the graphics device.
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 570, column 14)
FfxCommandList
typedef void* FfxCommandList
A typedef representing a command list or command buffer.
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 579, column 14)
FfxRootSignature
typedef void* FfxRootSignature
A typedef for a root signature.
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 584, column 14)
FfxCommandSignature
typedef void* FfxCommandSignature
A typedef for a command signature, used for indirect workloads.
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 589, column 14)
FfxPipeline
typedef void* FfxPipeline
A typedef for a pipeline state object.
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 594, column 14)
FfxAllocFunc
typedef void *(* FfxAllocFunc) (size_t size)
Allocate block of memory.
The callback function for requesting memory of provided size. size cannot be 0.
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 609, column 9)
FfxReallocFunc
typedef void *(* FfxReallocFunc) (void *ptr, size_t size)
Reallocate block of memory.
The callback function for reallocating provided block of memory to new location with specified size. When provided with NULL as ptr then it should behave as FfxBreadcrumbsAllocFunc. If the operation failed then contents of ptr cannot be changed. size cannot be 0.
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 629, column 9)
FfxFreeFunc
typedef void(* FfxFreeFunc) (void *ptr)
Free block of memory.
The callback function for freeing provided block of memory. ptr cannot be NULL.
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 641, column 9)
FfxConstantBufferAllocator
typedef FfxConstantAllocation(* FfxConstantBufferAllocator) (void *data, const FfxUInt64 dataSize)
A function definition for a constant buffer allocation callback.
Used to provide a constant buffer allocator to the calling backend
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 794, column 9)
Enumerations
FfxSurfaceFormat
enum FfxSurfaceFormat
An enumeration of surface formats. Needs to match enum FfxApiSurfaceFormat.
Values:
FFX_SURFACE_FORMAT_UNKNOWN
Unknown format.
FFX_SURFACE_FORMAT_R32G32B32A32_TYPELESS
32 bit per channel, 4 channel typeless format
FFX_SURFACE_FORMAT_R32G32B32A32_UINT
32 bit per channel, 4 channel uint format
FFX_SURFACE_FORMAT_R32G32B32A32_FLOAT
32 bit per channel, 4 channel float format
FFX_SURFACE_FORMAT_R16G16B16A16_FLOAT
16 bit per channel, 4 channel float format
FFX_SURFACE_FORMAT_R32G32B32_FLOAT
32 bit per channel, 3 channel float format
FFX_SURFACE_FORMAT_R32G32_FLOAT
32 bit per channel, 2 channel float format
FFX_SURFACE_FORMAT_R8_UINT
8 bit per channel, 1 channel float format
FFX_SURFACE_FORMAT_R32_UINT
32 bit per channel, 1 channel float format
FFX_SURFACE_FORMAT_R8G8B8A8_TYPELESS
8 bit per channel, 4 channel typeless format
FFX_SURFACE_FORMAT_R8G8B8A8_UNORM
8 bit per channel, 4 channel unsigned normalized format
FFX_SURFACE_FORMAT_R8G8B8A8_SNORM
8 bit per channel, 4 channel signed normalized format
FFX_SURFACE_FORMAT_R8G8B8A8_SRGB
8 bit per channel, 4 channel srgb normalized
FFX_SURFACE_FORMAT_B8G8R8A8_TYPELESS
8 bit per channel, 4 channel typeless format
FFX_SURFACE_FORMAT_B8G8R8A8_UNORM
8 bit per channel, 4 channel unsigned normalized format
FFX_SURFACE_FORMAT_B8G8R8A8_SRGB
8 bit per channel, 4 channel srgb normalized
FFX_SURFACE_FORMAT_R11G11B10_FLOAT
32 bit 3 channel float format
FFX_SURFACE_FORMAT_R10G10B10A2_UNORM
10 bit per 3 channel, 2 bit for 1 channel normalized format
FFX_SURFACE_FORMAT_R16G16_FLOAT
16 bit per channel, 2 channel float format
FFX_SURFACE_FORMAT_R16G16_UINT
16 bit per channel, 2 channel unsigned int format
FFX_SURFACE_FORMAT_R16G16_SINT
16 bit per channel, 2 channel signed int format
FFX_SURFACE_FORMAT_R16_FLOAT
16 bit per channel, 1 channel float format
FFX_SURFACE_FORMAT_R16_UINT
16 bit per channel, 1 channel unsigned int format
FFX_SURFACE_FORMAT_R16_UNORM
16 bit per channel, 1 channel unsigned normalized format
FFX_SURFACE_FORMAT_R16_SNORM
16 bit per channel, 1 channel signed normalized format
FFX_SURFACE_FORMAT_R8_UNORM
8 bit per channel, 1 channel unsigned normalized format
FFX_SURFACE_FORMAT_R8G8_UNORM
8 bit per channel, 2 channel unsigned normalized format
FFX_SURFACE_FORMAT_R8G8_UINT
8 bit per channel, 2 channel unsigned integer format
FFX_SURFACE_FORMAT_R32_FLOAT
32 bit per channel, 1 channel float format
FFX_SURFACE_FORMAT_R9G9B9E5_SHAREDEXP
9 bit per channel, 5 bit exponent format
FFX_SURFACE_FORMAT_R16G16B16A16_TYPELESS
16 bit per channel, 4 channel typeless format
FFX_SURFACE_FORMAT_R32G32_TYPELESS
32 bit per channel, 2 channel typeless format
FFX_SURFACE_FORMAT_R10G10B10A2_TYPELESS
10 bit per 3 channel, 2 bit for 1 channel typeless format
FFX_SURFACE_FORMAT_R16G16_TYPELESS
16 bit per channel, 2 channel typeless format
FFX_SURFACE_FORMAT_R16_TYPELESS
16 bit per channel, 1 channel typeless format
FFX_SURFACE_FORMAT_R8_TYPELESS
8 bit per channel, 1 channel typeless format
FFX_SURFACE_FORMAT_R8G8_TYPELESS
8 bit per channel, 2 channel typeless format
FFX_SURFACE_FORMAT_R32_TYPELESS
32 bit per channel, 1 channel typeless format
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 282, column 1)
FfxResourceUsage
enum FfxResourceUsage
An enumeration of resource usage.
Values:
FFX_RESOURCE_USAGE_READ_ONLY
FFX_RESOURCE_USAGE_READ_ONLY = 0
No usage flags indicate a resource is read only.
FFX_RESOURCE_USAGE_RENDERTARGET
FFX_RESOURCE_USAGE_RENDERTARGET = (1<<0)
Indicates a resource will be used as render target.
FFX_RESOURCE_USAGE_UAV
FFX_RESOURCE_USAGE_UAV = (1<<1)
Indicates a resource will be used as UAV.
FFX_RESOURCE_USAGE_DEPTHTARGET
FFX_RESOURCE_USAGE_DEPTHTARGET = (1<<2)
Indicates a resource will be used as depth target.
FFX_RESOURCE_USAGE_INDIRECT
FFX_RESOURCE_USAGE_INDIRECT = (1<<3)
Indicates a resource will be used as indirect argument buffer.
FFX_RESOURCE_USAGE_ARRAYVIEW
FFX_RESOURCE_USAGE_ARRAYVIEW = (1<<4)
Indicates a resource that will generate array views. Works on 2D and cubemap textures.
FFX_RESOURCE_USAGE_STENCILTARGET
FFX_RESOURCE_USAGE_STENCILTARGET = (1<<5)
Indicates a resource will be used as stencil target.
FFX_RESOURCE_USAGE_DCC_RENDERTARGET
FFX_RESOURCE_USAGE_DCC_RENDERTARGET = (1<<15)
Indicates a resource that should specify optimal render target memory access flags (for console use)
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 334, column 1)
FfxResourceStates
enum FfxResourceStates
An enumeration of resource states.
Values:
FFX_RESOURCE_STATE_COMMON
FFX_RESOURCE_STATE_COMMON = (1 <<0)
FFX_RESOURCE_STATE_UNORDERED_ACCESS
FFX_RESOURCE_STATE_UNORDERED_ACCESS = (1 <<1)
Indicates a resource is in the state to be used as UAV.
FFX_RESOURCE_STATE_COMPUTE_READ
FFX_RESOURCE_STATE_COMPUTE_READ = (1 <<2)
Indicates a resource is in the state to be read by compute shaders.
FFX_RESOURCE_STATE_PIXEL_READ
FFX_RESOURCE_STATE_PIXEL_READ = (1 <<3)
Indicates a resource is in the state to be read by pixel shaders.
FFX_RESOURCE_STATE_PIXEL_COMPUTE_READ
FFX_RESOURCE_STATE_PIXEL_COMPUTE_READ = (FFX_RESOURCE_STATE_PIXEL_READ | FFX_RESOURCE_STATE_COMPUTE_READ)
Indicates a resource is in the state to be read by pixel or compute shaders.
FFX_RESOURCE_STATE_COPY_SRC
FFX_RESOURCE_STATE_COPY_SRC = (1 <<4)
Indicates a resource is in the state to be used as source in a copy command.
FFX_RESOURCE_STATE_COPY_DEST
FFX_RESOURCE_STATE_COPY_DEST = (1 <<5)
Indicates a resource is in the state to be used as destination in a copy command.
FFX_RESOURCE_STATE_GENERIC_READ
FFX_RESOURCE_STATE_GENERIC_READ = (FFX_RESOURCE_STATE_COPY_SRC | FFX_RESOURCE_STATE_COMPUTE_READ)
Indicates a resource is in generic (slow) read state.
FFX_RESOURCE_STATE_INDIRECT_ARGUMENT
FFX_RESOURCE_STATE_INDIRECT_ARGUMENT = (1 <<6)
Indicates a resource is in the state to be used as an indirect command argument.
FFX_RESOURCE_STATE_PRESENT
FFX_RESOURCE_STATE_PRESENT = (1 <<7)
Indicates a resource is in the state to be used to present to the swap chain.
FFX_RESOURCE_STATE_RENDER_TARGET
FFX_RESOURCE_STATE_RENDER_TARGET = (1 <<8)
Indicates a resource is in the state to be used as render target.
FFX_RESOURCE_STATE_DEPTH_ATTACHEMENT
FFX_RESOURCE_STATE_DEPTH_ATTACHEMENT = (1 <<9)
Indicates a resource is in the state to be used as depth attachment.
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 349, column 1)
FfxResourceDimension
enum FfxResourceDimension
An enumeration of surface dimensions.
Values:
FFX_RESOURCE_DIMENSION_TEXTURE_1D
A resource with a single dimension.
FFX_RESOURCE_DIMENSION_TEXTURE_2D
A resource with two dimensions.
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 368, column 1)
FfxResourceViewDimension
enum FfxResourceViewDimension
An enumeration of resource view dimensions.
Values:
FFX_RESOURCE_VIEW_DIMENSION_BUFFER
A resource view on a buffer.
FFX_RESOURCE_VIEW_DIMENSION_TEXTURE_1D
A resource view on a single dimension.
FFX_RESOURCE_VIEW_DIMENSION_TEXTURE_1D_ARRAY
A resource view on a single dimensional array.
FFX_RESOURCE_VIEW_DIMENSION_TEXTURE_2D
A resource view on two dimensions.
FFX_RESOURCE_VIEW_DIMENSION_TEXTURE_2D_ARRAY
A resource view on two dimensional array.
FFX_RESOURCE_VIEW_DIMENSION_TEXTURE_3D
A resource view on three dimensions.
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 377, column 1)
FfxResourceFlags
enum FfxResourceFlags
An enumeration of surface dimensions.
Values:
FFX_RESOURCE_FLAGS_NONE
FFX_RESOURCE_FLAGS_NONE = 0
No flags.
FFX_RESOURCE_FLAGS_ALIASABLE
FFX_RESOURCE_FLAGS_ALIASABLE = (1 <<0)
A bit indicating a resource does not need to persist across frames.
FFX_RESOURCE_FLAGS_UNDEFINED
FFX_RESOURCE_FLAGS_UNDEFINED = (1 <<1)
Special case flag used internally when importing resources that require additional setup.
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 390, column 1)
FfxResourceViewType
enum FfxResourceViewType
An enumeration of all resource view types.
Values:
FFX_RESOURCE_VIEW_UNORDERED_ACCESS
The resource view is an unordered access view (UAV).
FFX_RESOURCE_VIEW_SHADER_READ
The resource view is a shader resource view (SRV).
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 400, column 1)
FfxFilterType
enum FfxFilterType
The type of filtering to perform when reading a texture.
Values:
FFX_FILTER_TYPE_MINMAGMIP_POINT
Point sampling.
FFX_FILTER_TYPE_MINMAGMIP_LINEAR
Sampling with interpolation.
FFX_FILTER_TYPE_MINMAGLINEARMIP_POINT
Use linear interpolation for minification and magnification; use point sampling for mip-level sampling.
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 409, column 1)
FfxAddressMode
enum FfxAddressMode
The address mode used when reading a texture.
Values:
FFX_ADDRESS_MODE_WRAP
Wrap when reading texture.
FFX_ADDRESS_MODE_MIRROR
Mirror when reading texture.
FFX_ADDRESS_MODE_CLAMP
Clamp when reading texture.
FFX_ADDRESS_MODE_BORDER
Border color when reading texture.
FFX_ADDRESS_MODE_MIRROR_ONCE
Mirror once when reading texture.
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 419, column 1)
FfxShaderModel
enum FfxShaderModel
An enumeration of all supported shader models.
Values:
FFX_SHADER_MODEL_5_1
Shader model 5.1.
FFX_SHADER_MODEL_6_0
Shader model 6.0.
FFX_SHADER_MODEL_6_1
Shader model 6.1.
FFX_SHADER_MODEL_6_2
Shader model 6.2.
FFX_SHADER_MODEL_6_3
Shader model 6.3.
FFX_SHADER_MODEL_6_4
Shader model 6.4.
FFX_SHADER_MODEL_6_5
Shader model 6.5.
FFX_SHADER_MODEL_6_6
Shader model 6.6.
FFX_SHADER_MODEL_6_7
Shader model 6.7.
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 431, column 1)
FfxResourceType
enum FfxResourceType
Values:
FFX_RESOURCE_TYPE_BUFFER
The resource is a buffer.
FFX_RESOURCE_TYPE_TEXTURE1D
The resource is a 1-dimensional texture.
FFX_RESOURCE_TYPE_TEXTURE2D
The resource is a 2-dimensional texture.
FFX_RESOURCE_TYPE_TEXTURE_CUBE
The resource is a cube map.
FFX_RESOURCE_TYPE_TEXTURE3D
The resource is a 3-dimensional texture.
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 447, column 1)
FfxHeapType
enum FfxHeapType
An enumeration for different heap types.
Values:
FFX_HEAP_TYPE_DEFAULT
FFX_HEAP_TYPE_DEFAULT = 0
Local memory.
FFX_HEAP_TYPE_UPLOAD
Heap used for uploading resources.
FFX_HEAP_TYPE_READBACK
Heap used for reading back resources.
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 459, column 1)
FfxGpuJobType
enum FfxGpuJobType
An enumeration for different render job types.
Values:
FFX_GPU_JOB_CLEAR_FLOAT
FFX_GPU_JOB_CLEAR_FLOAT = 0
The GPU job is performing a floating-point clear.
FFX_GPU_JOB_COPY
FFX_GPU_JOB_COPY = 1
The GPU job is performing a copy.
FFX_GPU_JOB_COMPUTE
FFX_GPU_JOB_COMPUTE = 2
The GPU job is performing a compute dispatch.
FFX_GPU_JOB_BARRIER
FFX_GPU_JOB_BARRIER = 3
The GPU job is performing a barrier.
FFX_GPU_JOB_DISCARD
FFX_GPU_JOB_DISCARD = 4
The GPU job is performing a floating-point clear.
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 469, column 1)
FfxDescriptiorType
enum FfxDescriptiorType
An enumeration for various descriptor types.
Values:
FFX_DESCRIPTOR_TEXTURE_SRV
FFX_DESCRIPTOR_TEXTURE_SRV = 0
FFX_DESCRIPTOR_BUFFER_SRV
FFX_DESCRIPTOR_TEXTURE_UAV
FFX_DESCRIPTOR_BUFFER_UAV
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 487, column 1)
FfxBindStage
enum FfxBindStage
An enumeration for view binding stages.
Values:
FFX_BIND_PIXEL_SHADER_STAGE
FFX_BIND_PIXEL_SHADER_STAGE = 1 <<0
FFX_BIND_VERTEX_SHADER_STAGE
FFX_BIND_VERTEX_SHADER_STAGE = 1 <<1
FFX_BIND_COMPUTE_SHADER_STAGE
FFX_BIND_COMPUTE_SHADER_STAGE = 1 <<2
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 500, column 1)
FfxBarrierType
enum FfxBarrierType
An enumeration for barrier types.
Values:
FFX_BARRIER_TYPE_TRANSITION
FFX_BARRIER_TYPE_TRANSITION = 0
FFX_BARRIER_TYPE_UAV
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 511, column 1)
FfxMsgType
enum FfxMsgType
An enumeration for message types that can be passed.
Values:
FFX_MESSAGE_TYPE_ERROR
FFX_MESSAGE_TYPE_ERROR = 0
FFX_MESSAGE_TYPE_WARNING
FFX_MESSAGE_TYPE_WARNING = 1
FFX_MESSAGE_TYPE_COUNT
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 522, column 1)
FfxEffect
enum FfxEffect
An enumeration of all the effects which constitute the FidelityFX SDK.
Dictates what effect shader blobs to fetch for pipeline creation
Values:
FFX_EFFECT_FSR2
FFX_EFFECT_FSR2 = 0
FidelityFX Super Resolution v2.
FFX_EFFECT_FSR1
FidelityFX Super Resolution.
FFX_EFFECT_SPD
FidelityFX Single Pass Downsampler.
FFX_EFFECT_BLUR
FidelityFX Blur.
FFX_EFFECT_BREADCRUMBS
FidelityFX Breadcrumbs.
FFX_EFFECT_BRIXELIZER
FidelityFX Brixelizer.
FFX_EFFECT_BRIXELIZER_GI
FidelityFX Brixelizer GI.
FFX_EFFECT_CACAO
FidelityFX Combined Adaptive Compute Ambient Occlusion.
FFX_EFFECT_CAS
FidelityFX Contrast Adaptive Sharpening.
FFX_EFFECT_DENOISER
FidelityFX Denoiser.
FFX_EFFECT_LENS
FidelityFX Lens.
FFX_EFFECT_PARALLEL_SORT
FidelityFX Parallel Sort.
FFX_EFFECT_SSSR
FidelityFX Stochastic Screen Space Reflections.
FFX_EFFECT_VARIABLE_SHADING
FidelityFX Variable Shading.
FFX_EFFECT_LPM
FidelityFX Luma Preserving Mapper.
FFX_EFFECT_DOF
FidelityFX Depth of Field.
FFX_EFFECT_CLASSIFIER
FidelityFX Classifier.
FFX_EFFECT_FSR3UPSCALER
FidelityFX Super Resolution v3.
FFX_EFFECT_FRAMEINTERPOLATION
FidelityFX Frame Interpolation, part of FidelityFX Super Resolution v3.
FFX_EFFECT_OPTICALFLOW
FidelityFX Optical Flow, part of FidelityFX Super Resolution v3.
FFX_EFFECT_SHAREDRESOURCES
FFX_EFFECT_SHAREDRESOURCES = 127
FidelityFX Shared resources effect ID.
FFX_EFFECT_SHAREDAPIBACKEND
FFX_EFFECT_SHAREDAPIBACKEND = 128
FidelityFX Shared backend context used with DLL API.
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 533, column 1)
FfxResourceInitDataType
enum FfxResourceInitDataType
An enumeration for resource init data types that can be passed.
Values:
FFX_RESOURCE_INIT_DATA_TYPE_INVALID
FFX_RESOURCE_INIT_DATA_TYPE_INVALID = 0
FFX_RESOURCE_INIT_DATA_TYPE_UNINITIALIZED
FFX_RESOURCE_INIT_DATA_TYPE_BUFFER
FFX_RESOURCE_INIT_DATA_TYPE_VALUE
Source: sdk/include/FidelityFX/host/ffx_types.h
(line 819, column 1)