iMMERSE: MXAO is Marty's implementation of ambient occlusion, built using Ground Truth Ambient Occlusion (GTAO) and Irradiance Bitfields for accurate and realistic occlusion-based shading.
Quality Settings:
Sample Quality
Controls the number of samples generated by MXAO for ambient occlusion calculations. Higher sample counts produce more accurate and detailed occlusion results but significantly impact performance.
Shading Rate
Determines the pixel sampling rate for MXAO rendering. Full, Half, and Quarter rates render MXAO at different screen resolution fractions. Lower rates improve performance but reduce visual quality, with the difference becoming most apparent during camera movement and scene transitions.
Radius Configuration:
Sample Radius
Defines the spatial extent of MXAO's ambient occlusion sampling. This parameter controls how far the shader reaches to calculate occlusion effects, affecting both the scale of shadows and the level of detail captured.
Increase Radius with Distance
Enables dynamic radius scaling based on object distance from the camera. This feature is particularly useful for open-world games with expansive horizons, though it may produce artifacts on distant architectural elements or detailed objects.
Intensity and Blending:
Ambient Occlusion Amount
Controls the strength of the ambient occlusion effect. Higher values produce more pronounced shadows.
Fade-Out Distance
Specifies the depth at which ambient occlusion effects begin to fade.
Filter Quality
Determines the quality of MXAO's spatial filtering. Higher filter quality reduces banding artifacts and noise, providing smoother occlusion results. However, increased filtering quality comes with a performance cost.
Preprocessor Definitions:
MXAO_AO_TYPE
MXAO_AO_TYPE
allows you to select the ambient occlusion algorithm used by MXAO. By default, MXAO uses Ground Truth Ambient Occlusion (GTAO), but you can choose from three alternative modes:
- 0: Ground Truth Ambient Occlusion (high contrast, fast)
- 1: Solid Angle (smoother, fastest)
- 2: Visibility Bitmask (DX11+ only, highest quality, slower)
- 3: Visibility Bitmask w/ Solid Angle (like 2, only smoother)
MXAO_USE_LAUNCHPAD_NORMALS
MXAO_USE_LAUNCHPAD_NORMALS
enables MXAO to utilize Launchpad's enhanced normal vectors. This allows MXAO to benefit from Launchpad's Smoothed and Textured normal processing, significantly improving ambient occlusion quality in games where the depth buffer exhibits polygonal artifacts or lacks surface detail.
DLSS, FSR, and TAAU Compatibility
_MARTYSMODS_TAAU_SCALE
Usage of this preprocessor definition requires Launchpad to be active and positioned above MXAO in the shader load order.
_MARTYSMODS_TAAU_SCALE
addresses depth buffer jitter introduced by upscaling technologies such as DLSS, FSR, or TAAU. To simplify configuration, Marty has defined specific scaling modes for users:
Scaling Mode | DLSS | FSR |
---|---|---|
Native | 1.000 | 1.000 |
Quality | DLSS_QUALITY | FSR_QUALITY |
Balanced | DLSS_BALANCED | FSR_BALANCED |
Performance | DLSS_PERFORMANCE | FSR_PERFORMANCE |
Ultra Performance | DLSS_ULTRA_PERFORMANCE | FSR_ULTRA_PERFORMANCE |
Debug:
Show Raw AO
Displays the raw ambient occlusion calculations without texture and color information, allowing you to analyze the occlusion effect in isolation and verify proper parameter configuration.