Lysa  0.0
Lysa 3D Engine
RendererConfiguration Struct Reference

Detailed Description

Configuration of the rendering path

Public Attributes

RendererType rendererType {static_cast<int>(RendererType::DEFERRED)}
 Renderer type, forward or deferred. More...
 
vireo::Extent resolution {0, 0}
 Rendering resolution in pixels, 0,0 == use render target extent *‍/. More...
 
FrameScalingType frameScalingType {FrameScalingType::NONE}
 Frame scaling algorithm when resolution extent != render target extent. More...
 
FrameSharpeningType frameScalingSharpening {FrameSharpeningType::AMD_FSR_1}
 Frame sharpening algorithm to apply after frame scaling. More...
 
vireo::ImageFormat swapChainFormat {vireo::ImageFormat::R8G8B8A8_UNORM}
 Postprocessing & swap chain image format. Note that the real format can be different if the surface does not support the requested format. More...
 
vireo::ImageFormat colorRenderingFormat {vireo::ImageFormat::R16G16B16A16_UNORM}
 Main color pass frame buffer format. More...
 
vireo::ImageFormat depthStencilFormat {vireo::ImageFormat::D32_SFLOAT_S8_UINT}
 Depth and stencil buffer format. More...
 
bool depthBiasEnable {true}
 Controls whether to bias fragment depth values. More...
 
float depthBiasConstantFactor {-1.0f}
 A scalar factor controlling the constant depth value added to each fragment. More...
 
float depthBiasClamp {0.0f}
 The maximum (or minimum) depth bias of a fragment. More...
 
float depthBiasSlopeFactor {1.75f}
 A scalar factor applied to a fragment’s slope in depth bias calculations. More...
 
float3 clearColor {DEFAULT_CLEAR_COLOR}
 Frame buffer clear color. More...
 
bool shaderMaterialAlphaBlending {true}
 Enagle alpha blending in the ShaderMaterialPass. More...
 
vireo::MSAA msaa {vireo::MSAA::NONE}
 MSAA samples count. More...
 
float gamma {2.2f}
 Gamma correction factor when using *_UNORM, *_SNORM or *_SFLOAT format. More...
 
float exposure {1.0f}
 Exposure correction factor. More...
 
ToneMappingType toneMappingType {ToneMappingType::ACES}
 Type of tone mapping shader when using HDR rendering formats R16G16B16A16_UNORM, R16G16B16A16_SFLOAT or R32G32B32A32_SFLOAT. More...
 
PostProcessAntiAliasingType postProcessAntiAliasingType {PostProcessAntiAliasingType::NONE}
 Type of antialiasing post-processing shader. More...
 
float fxaaSpanMax {16.0f}
 Maximum distance for FXAA luminance search (higher = sharper, more expensive) More...
 
float fxaaReduceMul {1.0f / 8.0f}
 Multiplier for reducing high-contrast artifacts in FXAA. More...
 
float fxaaReduceMin {1.0f / 256.0f}
 Minimum reduction factor to avoid division by zero in FXAA. More...
 
float smaaEdgeThreshold {0.2f}
 Minimum luma contrast for SMAA edge detection (lower = more edges detected but noisier) More...
 
int smaaBlendMaxSteps {4}
 Maximum search steps for SMAA weights blending (higher = better quality, more expensive) More...
 
bool bloomEnabled {true}
 Enable the bloom post-processing effect. More...
 
uint32 bloomBlurKernelSize {5}
 Bloom effect blur kernel size. More...
 
float bloomBlurStrength {1.2f}
 Bloom effect blur strength. More...
 
float rcasSharpenStrength {0.5f}
 AMD RCAS strength, between 0.0 and 1.0 (higher = more sharpening) More...
 

Member Data Documentation

uint32 bloomBlurKernelSize {5}

Bloom effect blur kernel size.

float bloomBlurStrength {1.2f}

Bloom effect blur strength.

bool bloomEnabled {true}

Enable the bloom post-processing effect.

float3 clearColor {DEFAULT_CLEAR_COLOR}

Frame buffer clear color.

vireo::ImageFormat colorRenderingFormat {vireo::ImageFormat::R16G16B16A16_UNORM}

Main color pass frame buffer format.

float depthBiasClamp {0.0f}

The maximum (or minimum) depth bias of a fragment.

float depthBiasConstantFactor {-1.0f}

A scalar factor controlling the constant depth value added to each fragment.

bool depthBiasEnable {true}

Controls whether to bias fragment depth values.

float depthBiasSlopeFactor {1.75f}

A scalar factor applied to a fragment’s slope in depth bias calculations.

vireo::ImageFormat depthStencilFormat {vireo::ImageFormat::D32_SFLOAT_S8_UINT}

Depth and stencil buffer format.

float exposure {1.0f}

Exposure correction factor.

FrameSharpeningType frameScalingSharpening {FrameSharpeningType::AMD_FSR_1}

Frame sharpening algorithm to apply after frame scaling.

FrameScalingType frameScalingType {FrameScalingType::NONE}

Frame scaling algorithm when resolution extent != render target extent.

float fxaaReduceMin {1.0f / 256.0f}

Minimum reduction factor to avoid division by zero in FXAA.

float fxaaReduceMul {1.0f / 8.0f}

Multiplier for reducing high-contrast artifacts in FXAA.

float fxaaSpanMax {16.0f}

Maximum distance for FXAA luminance search (higher = sharper, more expensive)

float gamma {2.2f}

Gamma correction factor when using *_UNORM, *_SNORM or *_SFLOAT format.

vireo::MSAA msaa {vireo::MSAA::NONE}

MSAA samples count.

PostProcessAntiAliasingType postProcessAntiAliasingType {PostProcessAntiAliasingType::NONE}

Type of antialiasing post-processing shader.

float rcasSharpenStrength {0.5f}

AMD RCAS strength, between 0.0 and 1.0 (higher = more sharpening)

RendererType rendererType {static_cast<int>(RendererType::DEFERRED)}

Renderer type, forward or deferred.

vireo::Extent resolution {0, 0}

Rendering resolution in pixels, 0,0 == use render target extent *‍/.

bool shaderMaterialAlphaBlending {true}

Enagle alpha blending in the ShaderMaterialPass.

int smaaBlendMaxSteps {4}

Maximum search steps for SMAA weights blending (higher = better quality, more expensive)

float smaaEdgeThreshold {0.2f}

Minimum luma contrast for SMAA edge detection (lower = more edges detected but noisier)

vireo::ImageFormat swapChainFormat {vireo::ImageFormat::R8G8B8A8_UNORM}

Postprocessing & swap chain image format. Note that the real format can be different if the surface does not support the requested format.

ToneMappingType toneMappingType {ToneMappingType::ACES}

Type of tone mapping shader when using HDR rendering formats R16G16B16A16_UNORM, R16G16B16A16_SFLOAT or R32G32B32A32_SFLOAT.