Skip to main content

PostSettings

Struct PostSettings 

Source
pub struct PostSettings {
Show 17 fields pub post_process: PostProcessTunables, pub taa_enabled: bool, pub ssao: Option<SsaoSettings>, pub ssr: Option<SsrSettings>, pub ssgi: Option<SsgiSettings>, pub rt_reflections: Option<RtReflectionSettings>, pub rt_dynamic: RtDynamicMode, pub rt_skinned_geometry: bool, pub reflection_blur_scale: u32, pub auto_exposure: Option<AutoExposureSettings>, pub auto_exposure_bias_ev: f32, pub hdr_display: bool, pub hdr_pq: bool, pub temporal_upscaling: bool, pub upscale_scale: f32, pub upscale_backend: UpscalerBackend, pub occlusion_two_pass: bool,
}
Expand description

Post-process and display settings resolved from PostProcessConfig (plus the user’s persisted overrides, the quality-preset ceiling, and the launch’s render requests). Every Option here is an init-time gate: None allocates nothing.

Fields§

§post_process: PostProcessTunables

Composite tunables pushed to the post pass. The backend pairs them with the display-output flags it negotiates below (hdr_display / hdr_pq) to build the uniform the shaders read.

§taa_enabled: bool

Whether the temporal anti-aliasing pass runs.

§ssao: Option<SsaoSettings>

Screen-space ambient occlusion, or None when off.

§ssr: Option<SsrSettings>

Screen-space reflections, or None when off.

§ssgi: Option<SsgiSettings>

Screen-space global illumination, or None when off.

§rt_reflections: Option<RtReflectionSettings>

Requires an RT-capable GPU; backends fall back to SSR without one.

§rt_dynamic: RtDynamicMode

How the ray-tracing acceleration structure tracks moving props. Inert when rt_reflections is None.

§rt_skinned_geometry: bool

Whether skinned meshes join the ray-tracing acceleration structure. False leaves the BVH over static + instanced geometry only, so nothing animated appears in a ray-traced reflection.

§reflection_blur_scale: u32

Per-axis divisor for the roughness-aware reflection blur target.

§auto_exposure: Option<AutoExposureSettings>

Auto-exposure, or None when off.

§auto_exposure_bias_ev: f32

Authored exposure_ev carried as a bias on the adapted EV when auto-exposure is on; otherwise baked into post_process.exposure.

§hdr_display: bool

HDR display request; each backend gates it on its own EDR / colour- space capability probe and falls back to SDR with a warning.

§hdr_pq: bool

PQ-encoded HDR output; honoured by Metal today, accepted elsewhere.

§temporal_upscaling: bool

Whether temporal upscaling runs.

§upscale_scale: f32

Per-axis input-to-output ratio; ignored when upscaling is off.

§upscale_backend: UpscalerBackend

Upscaler selector for DirectX / Vulkan (FSR3 / DLSS / XeSS); Metal always uses MetalFX and ignores it.

§occlusion_two_pass: bool

Two-pass Hi-Z occlusion request; gated on the bindless cull path.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.