Luxar Viewer API Documentation - v2026.9.22
    Preparing search index...
    interface GSplatTSLConfig {
        useColormap?: boolean;
        gammaOne?: boolean;
        noGOG?: boolean;
        blendingMode?: BlendingModeName;
    }
    Index
    useColormap?: boolean
    gammaOne?: boolean

    When true (gamma == 1.0), the per-fragment / pre-LUT gamma pow() is skipped — pow(x, 1) == x. Mirrors the GLSL3 LUXAR_GAMMA_ONE define. The material wrapper sets this from the presence of that define and toggles it on updateGamma.

    noGOG?: boolean

    Fast path: skip the vColor * uIntensity + uOffset GOG chain (and its max(..., vec3(0)) clamp) when the wrapper knows intensity == 1 && offset == 0 — the default and most common configuration. Mirrors the GLSL3 LUXAR_NO_GOG define and the line/point factories' noGOG flag (three-geometry symmetry). The gain-aware visibility discard keeps reading uIntensity — under noGOG uIntensity == 1, so max(uIntensity, 1.0) is 1.0 and behavior is identical.

    blendingMode?: BlendingModeName

    Luxar blending mode. GSplats premultiply intensity into RGB in every mode; normal ADDITIONALLY emits a clamped coverage alpha (premultiplied alpha-over — mirrors the GLSL LUXAR_NORMAL_PREMULT define) and volumetric emits the emission–absorption pair vec4(finalColor·S(τ), 1 − e^(−τ)) (mirrors LUXAR_VOLUMETRIC) — both pair with the One / OneMinusSrcAlpha state. All other modes keep the alpha = 1.0 output contract. The factory derives both the fragment-output style and the THREE blending state from this one field. Defaults to 'additive' to match the GLSL wrapper class.