Taos API Reference
    Preparing search index...

    Interface DeferredPresetOptions

    interface DeferredPresetOptions {
        sky?: SkyOption;
        shadow?: false | ShadowFeatureOptions;
        ibl?: IblTextures;
        ao?: false | AOMethod;
        occlusionCull?: boolean;
        ssgi?: boolean | SsgiFeatureOptions;
        transparent?: boolean;
        overlayLighting?: "forward" | "forward+";
        pointSpotLights?:
            | boolean
            | { culling?: PointSpotCulling; autoCulled?: AutoCulledMode };
        taa?: boolean;
        aa?: false | "taa" | "smaa";
        smaa?: SMAAOptions;
        motionBlur?: boolean | MotionBlurFeatureOptions;
        dof?: boolean | DofFeatureOptions;
        bloom?: boolean | BloomFeatureOptions;
        exposure?: number;
        aces?: boolean;
        camera?: CameraExposureSettings;
        physicalSceneScale?: number;
        hdrCanvas?: boolean;
        grade?: ColorGradeSettings;
        lut?: string | CubeLut;
        lutAmount?: number;
        postFx?: PostFxSettings;
        lighting?: DeferredLightingFeatureOptions;
        contactShadows?: ContactShadowParams | null;
        cookie?: CookieParams | null;
        shadowFilter?: "pcss" | "vsm";
        reflectionProbes?: true | ReflectionProbeFeatureOptions;
        projectors?: boolean | ProjectorFeatureOptions;
    }
    Index

    Properties

    sky?: SkyOption

    Sky source — see SkyOption for the union. Default: no sky (deferred lighting clears HDR itself).

    shadow?: false | ShadowFeatureOptions

    Cascaded directional shadow map. false skips the feature; a config object is forwarded to ShadowFeature. Default: enabled.

    ibl?: IblTextures

    Baked IBL textures, forwarded to the deferred lighting pass.

    ao?: false | AOMethod

    AO method; false skips the AO feature entirely. Default: 'ssao'.

    occlusionCull?: boolean

    Opt-in GPU occlusion culling for the deferred geometry pass (default off). Builds a Hi-Z pyramid each frame and uses it the next frame to skip opaque draws hidden behind earlier geometry (via drawIndexedIndirect). Previous-frame Hi-Z → one frame of latency; conservative (never over-culls). Helps heavy-occlusion scenes (terrain, cities, streamed geo tiles); a no-op cost for small/open scenes. See GeometryFeatureOptions.occlusionCull.

    ssgi?: boolean | SsgiFeatureOptions

    Enable screen-space global illumination. Pass true for defaults or a partial settings object. Inserted between AO and deferred lighting so the SSGI result feeds the indirect-diffuse term. Default: disabled.

    transparent?: boolean

    Register the ForwardOverlayFeature for transparent meshes. Default: true.

    overlayLighting?: "forward" | "forward+"

    Which forward pass shades the transparency overlay:

    • 'forward' (default) — plain ForwardPass; cheap with a small point-light count.
    • 'forward+'ForwardPlusPass sharing the deferred gbuffer depth for tile culling. Worth it once transparents need to see many point lights. Ignored when transparent is false.
    pointSpotLights?:
        | boolean
        | { culling?: PointSpotCulling; autoCulled?: AutoCulledMode }

    Register point + spot light shadowing & lighting. Default: false (cheap forward pipelines don't need it; deferred_full and crafty enable it).

    Pass true for the defaults ('auto' culling — brute-force for a few lights, tiled once the count grows), or { culling } to force a specific mode ('none' / 'tiled' / 'clustered'). { autoCulled: 'clustered' } makes 'auto' escalate to clustered instead of tiled (better for large depth ranges). Culling lifts the per-pixel cost cap so the scene can use the full MAX_POINT_LIGHTS/MAX_SPOT_LIGHTS.

    taa?: boolean

    Temporal anti-aliasing. Default: true. Ignored when aa is set.

    aa?: false | "taa" | "smaa"

    Anti-aliasing method, a superset of taa that also selects SMAA:

    • 'taa' — temporal AA (TAAFeature); resolves sub-pixel detail but needs camera jitter and can ghost under motion.
    • 'smaa' — spatial SMAA 1x (SMAAFeature); no jitter, no history, no temporal ghosting.
    • false — no anti-aliasing. When omitted, falls back to taa (default 'taa').

    Tuning forwarded to SMAAFeature when aa: 'smaa'.

    motionBlur?: boolean | MotionBlurFeatureOptions

    Motion blur. Camera-only by default; pass { useVelocityBuffer: true } to add per-object motion blur via an extra velocity-buffer pass. Slotted after TAA and before DoF / bloom so those passes respond to the blurred image. Default: disabled.

    dof?: boolean | DofFeatureOptions
    bloom?: boolean | BloomFeatureOptions
    exposure?: number
    aces?: boolean

    Drive the tonemap exposure from a physical camera (aperture/shutter/ISO → EV100) instead of exposure. Mutate the object's fields for live camera sliders. See TonemapFeature.

    physicalSceneScale?: number

    Calibration for camera on a still-normalized scene (default 1).

    hdrCanvas?: boolean

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

    lut?: string | CubeLut

    Optional .cube 3D LUT (URL or parsed) applied after the tonemap operator.

    lutAmount?: number

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

    Lens & film post-FX applied in the tonemap pass (chromatic aberration, vignette, lens distortion, Panini projection, film grain). Mutate fields on the live TonemapFeature.postFx object for runtime sliders.

    Forwarded to DeferredLightingFeature for extra knobs (shadow bias, etc.).

    contactShadows?: ContactShadowParams | null

    Screen-space contact shadows for the sun (convenience for lighting.contactShadows). Omit to disable.

    cookie?: CookieParams | null

    Directional light cookie / gobo projected along the sun (convenience for lighting.cookie). Omit to disable.

    shadowFilter?: "pcss" | "vsm"

    Directional shadow filtering — 'pcss' (default) or 'vsm' (EVSM2) (convenience for lighting.shadowFilter).

    reflectionProbes?: true | ReflectionProbeFeatureOptions

    Register a ReflectionProbeFeature. The feature discovers ReflectionProbe components in the scene each frame and bakes their cubemaps + IBL into a shared cube-array; the deferred lighting pass blends those over the global sky IBL per-pixel.

    Pass true for the defaults (max 8 probes, 256-cube capture) or an options object to tune sizes / lighting overrides. Default: disabled.

    projectors?: boolean | ProjectorFeatureOptions

    Register a ProjectorFeature that composites unlit projection textures (Projector components) onto the HDR target after lighting. Pass true for the defaults or an options object. Default: disabled.