Optional ReadonlyuseOptional ReadonlygammaOptional ReadonlynoFast 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.
Optional ReadonlyblendingLuxar 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.
When
true(gamma == 1.0), the per-fragment / pre-LUT gammapow()is skipped —pow(x, 1) == x. Mirrors the GLSL3LUXAR_GAMMA_ONEdefine. The material wrapper sets this from the presence of that define and toggles it onupdateGamma.