simvx.graphics.renderer.colour_grading

Colour grading pass — LUT-based colour correction via compute shader.

Module Contents

Classes

ColourGradingPass

Compute-based colour grading: LUT lookup + brightness/contrast/saturation/temperature.

Functions

generate_neutral_lut

Generate an identity 3D LUT (no colour change).

generate_warm_lut

Generate a warm-toned 3D LUT (shifted toward orange/amber).

generate_cool_lut

Generate a cool-toned 3D LUT (shifted toward blue/teal).

generate_vintage_lut

Generate a vintage/desaturated warm 3D LUT.

Data

API

simvx.graphics.renderer.colour_grading.__all__

[‘ColourGradingPass’]

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

‘getLogger(…)’

simvx.graphics.renderer.colour_grading.generate_neutral_lut(size: int = 32) numpy.ndarray[source]

Generate an identity 3D LUT (no colour change).

simvx.graphics.renderer.colour_grading.generate_warm_lut(size: int = 32) numpy.ndarray[source]

Generate a warm-toned 3D LUT (shifted toward orange/amber).

simvx.graphics.renderer.colour_grading.generate_cool_lut(size: int = 32) numpy.ndarray[source]

Generate a cool-toned 3D LUT (shifted toward blue/teal).

simvx.graphics.renderer.colour_grading.generate_vintage_lut(size: int = 32) numpy.ndarray[source]

Generate a vintage/desaturated warm 3D LUT.

class simvx.graphics.renderer.colour_grading.ColourGradingPass(engine: Any)[source]

Compute-based colour grading: LUT lookup + brightness/contrast/saturation/temperature.

Operates in-place on the HDR colour image. Apply after fog, before tone mapping.

Initialization

setup(width: int, height: int, color_view: Any) None[source]

Initialize colour grading pipeline and upload default neutral LUT.

set_lut(lut_data: numpy.ndarray) None[source]

Upload a new 3D LUT texture. Shape should be (size, size, size, 4) uint8.

render(cmd: Any) None[source]

Dispatch colour grading compute shader. Call after fog, before tonemap.

Args: cmd: Active command buffer (outside any render pass).

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

Update descriptors for new dimensions.

cleanup() None[source]

Release all GPU resources.