FfxSssrDispatchDescription
A structure encapsulating the parameters for dispatching the various passes of FidelityFX Stochastic Screen Space Reflections.
File location: sdk/include/FidelityFX/host/ffx_sssr.h
Detailed description
A structure encapsulating the parameters for dispatching the various passes of FidelityFX Stochastic Screen Space Reflections.
Data fields
Type |
Description |
---|---|
commandList
The “FfxCommandList“ to record SSSR rendering commands into.
|
|
color
A “FfxResource“ containing the color buffer for the current frame.
|
|
depth
A “FfxResource“ containing the depth buffer for the current frame.
|
|
motionVectors
A “FfxResource“ containing the motion vectors buffer for the current frame.
|
|
normal
A “FfxResource“ containing the normal buffer for the current frame.
|
|
materialParameters
A “FfxResource“ containing the roughness buffer for the current frame.
|
|
environmentMap
A “FfxResource“ containing the environment map to fallback to when screenspace data is not sufficient.
|
|
brdfTexture
A “FfxResource“ containing the precomputed brdf LUT.
|
|
output
A “FfxResource“ to store the result of the SSSR algorithm into.
|
|
float |
invViewProjection
An array containing the inverse of the view projection matrix in column major layout.
|
float |
projection
An array containing the projection matrix in column major layout.
|
float |
invProjection
An array containing the inverse of the projection matrix in column major layout.
|
float |
view
An array containing the view matrix in column major layout.
|
float |
invView
An array containing the inverse of the view matrix in column major layout.
|
float |
prevViewProjection
An array containing the previous frame’s view projection matrix in column major layout.
|
renderSize
The resolution that was used for rendering the input resources.
|
|
motionVectorScale
The scale factor to apply to motion vectors.
|
|
float |
iblFactor
A factor to control the intensity of the image based lighting. Set to 1 for an HDR probe.
|
float |
normalUnPackMul
A multiply factor to transform the normal to the space expected by SSSR.
|
float |
normalUnPackAdd
An offset to transform the normal to the space expected by SSSR.
|
uint32_t |
roughnessChannel
The channel to read the roughness from the materialParameters texture.
|
bool |
isRoughnessPerceptual
A boolean to describe the space used to store roughness in the materialParameters texture. If false, we assume roughness squared was stored in the Gbuffer.
|
float |
temporalStabilityFactor
A factor to control the accmulation of history values. Higher values reduce noise, but are more likely to exhibit ghosting artefacts.
|
float |
depthBufferThickness
A bias for accepting hits. Larger values can cause streaks, lower values can cause holes.
|
float |
roughnessThreshold
Regions with a roughness value greater than this threshold won’t spawn rays.
|
float |
varianceThreshold
Luminance differences between history results will trigger an additional ray if they are greater than this threshold value.
|
uint32_t |
maxTraversalIntersections
Caps the maximum number of lookups that are performed from the depth buffer hierarchy. Most rays should terminate after approximately 20 lookups.
|
uint32_t |
minTraversalOccupancy
Exit the core loop early if less than this number of threads are running.
|
uint32_t |
mostDetailedMip
The most detailed MIP map level in the depth hierarchy. Perfect mirrors always use 0 as the most detailed level.
|
uint32_t |
samplesPerQuad
The minimum number of rays per quad. Variance guided tracing can increase this up to a maximum of 4.
|
uint32_t |
temporalVarianceGuidedTracingEnabled
A boolean controlling whether a ray should be spawned on pixels where a temporal variance is detected or not.
|