simvx.graphics.renderer.post_process

Post-processing pass — HDR tone mapping, FXAA, bloom, DoF, motion blur, film grain, vignette, chromatic aberration.

Module Contents

Classes

PostProcessPass

Renders HDR scene to offscreen target, then tone-maps to swapchain.

Data

API

simvx.graphics.renderer.post_process.__all__

[‘PostProcessPass’]

simvx.graphics.renderer.post_process.log[source]

‘getLogger(…)’

simvx.graphics.renderer.post_process.FLAG_FXAA

None

simvx.graphics.renderer.post_process.FLAG_BLOOM

None

simvx.graphics.renderer.post_process.FLAG_SSAO

None

simvx.graphics.renderer.post_process.FLAG_DOF

None

simvx.graphics.renderer.post_process.FLAG_GRAIN

None

simvx.graphics.renderer.post_process.FLAG_VIGNETTE

None

simvx.graphics.renderer.post_process.FLAG_CHROMATIC

None

simvx.graphics.renderer.post_process.FLAG_MOTION_BLUR

None

class simvx.graphics.renderer.post_process.PostProcessPass(engine: Any)[source]

Renders HDR scene to offscreen target, then tone-maps to swapchain.

The pass owns an HDR render target. When enabled:

  • 3D scene renders to the HDR target (pre_render phase)

  • Bloom extraction + blur (optional)

  • Tone mapping + FXAA + cinematic effects renders to swapchain (main render pass)

Initialization

property enabled: bool
property hdr_target: simvx.graphics.renderer.render_target.RenderTarget | None
property bloom_enabled: bool
property motion_blur_enabled: bool
setup() None[source]

Initialize HDR target and tonemap pipeline.

update_ssao_descriptor(ao_view: Any) None[source]

Update binding 4 with the SSAO output image view.

update_motion_blur_matrices(view: numpy.ndarray, proj: numpy.ndarray) None[source]

Update the motion blur UBO with current inverse VP and previous VP.

Call once per frame before render_tonemap() with the current camera matrices. Uses temporal smoothing to prevent sudden jumps from frame time variance.

begin_hdr_pass(cmd: Any) None[source]

Begin the HDR render pass (call before 3D rendering).

end_hdr_pass(cmd: Any) None[source]

End the HDR render pass.

render_bloom(cmd: Any) None[source]

Execute bloom pass (extract + blur). Call after end_hdr_pass.

render_tonemap(cmd: Any, width: int, height: int) None[source]

Render tone-mapped fullscreen quad to current render pass (swapchain).

resize(width: int, height: int) None[source]

Recreate HDR target and pipeline for new dimensions.

cleanup() None[source]

Release all GPU resources.