Taos API Reference
    Preparing search index...

    Interface TonemapFeatureOptions

    interface TonemapFeatureOptions {
        exposure?: number;
        aces?: boolean;
        tonemapper?: TonemapOperator;
        camera?: CameraExposureSettings;
        physicalSceneScale?: number;
        hdrCanvas?: boolean;
        grade?: ColorGradeSettings;
        lut?: string | CubeLut;
        lutAmount?: number;
        postFx?: PostFxSettings;
        transparentBackground?: boolean;
    }
    Index

    Properties

    exposure?: number
    aces?: boolean

    Legacy on/off ACES toggle. true selects the Narkowicz 'aces' curve. Ignored when tonemapper is set.

    tonemapper?: TonemapOperator

    Tonemap curve. Overrides aces when provided.

    Drive exposure from a physical camera (aperture / shutter / ISO via EV100) each frame instead of a raw scalar — see CameraExposureSettings. Mutate the object's fields at runtime for live camera sliders.

    physicalSceneScale?: number

    Normalized-units → cd/m² calibration applied to the camera exposure. Default 1 (correct once lights carry real photometric units; raise it for a still-normalized scene). Ignored unless camera is set.

    hdrCanvas?: boolean

    Skip the sRGB encode (set true on HDR canvases where the swapchain is linear).

    Film color-grading stack (white balance, lift/gamma/gain, split toning, …) applied in linear HDR before the tonemap operator. Mutate fields on the resolved TonemapFeature.grade object at runtime for live grading.

    lut?: string | CubeLut

    Optional .cube 3D LUT applied in display space after the tonemap operator. A string is fetched + parsed; a CubeLut is uploaded directly.

    lutAmount?: number

    LUT blend amount, 0..1 (default 1 = full LUT).

    Lens & film post-FX (chromatic aberration, vignette, lens distortion, Panini projection, film grain) applied in the tonemap pass. Mutate fields on the resolved TonemapFeature.postFx object at runtime for live edits. The Panini warp uses the live camera FOV unless panini.fov is set.

    transparentBackground?: boolean

    Force a transparent (alpha-preserving) composite even outside AR — clears the backbuffer to alpha 0 and emits scene coverage as output alpha (for a transparent WebGPU canvas). In AR passthrough the engine sets this per frame via frame.transparentBackground, so leave it off there.