Taos API Reference
    Preparing search index...

    Interface ForwardOverlayFeatureOptions

    interface ForwardOverlayFeatureOptions {
        ibl?: IblTextures;
        directional?: () => DirectionalLight | null;
        pointLights?: () => readonly PointLight[];
        spotLights?: () => readonly SpotLight[];
        drawItems?: () => readonly ForwardDrawItem[];
        skinnedDrawItems?: () => readonly SkinnedForwardDrawItem[];
        plus?: boolean;
    }
    Index

    Properties

    ibl?: IblTextures

    Image-based-lighting cubemaps the overlay reflects, matching the deferred path's environment. Without it, transparent/forward surfaces fall back to the pass's empty default cubemap and show no environment reflection — smooth metallic surfaces (e.g. a water surface) then look flat. Update it on environment changes via ForwardOverlayFeature.setIbl.

    directional?: () => DirectionalLight | null

    Override the directional source. Default = scene's first DirectionalLightComponent.

    pointLights?: () => readonly PointLight[]

    Override point lights. Default = scene.getComponents(PointLight).

    spotLights?: () => readonly SpotLight[]

    Override spot lights. Default = scene.getComponents(SpotLight).

    Only the plain ForwardPass backend consumes spot lights — when plus is on, tile-culled forward+ shading currently ignores them (spots fall back to the dedicated PointSpotLight pass).

    drawItems?: () => readonly ForwardDrawItem[]

    Override the transparent draw-item source. By default the feature reads frame.transparent (built from the scene's MeshRenderers with material.transparent === true). Pass a callback for samples that build their own transparent items outside the scene-graph.

    skinnedDrawItems?: () => readonly SkinnedForwardDrawItem[]

    Optional skinned-mesh draws routed through the same overlay backend. Items here are GPU-skinned in the vertex shader and depth-test against the deferred gbuffer depth without writing to it (when transparent).

    plus?: boolean

    When true the overlay routes its draws through ForwardPlusPass instead of ForwardPass, sharing the deferred path's depth buffer (via the pass's externalDepth dep) for both tile-culling and depth-test. Useful when the transparency layer needs to shade against many point lights — the tile cull keeps the per-fragment light list tight. The plain forward backend (default) is cheaper for small light counts and is the choice for everything that doesn't need the cull.