Optional ReadonlyuseOptional ReadonlyuseOptional ReadonlyblendingLuxar blending mode. Defaults to 'additive' to match the
GLSL wrapper class.
Optional ReadonlygammaFast path: skip the pow(adjusted, vec3(uInvGamma)) call when
the wrapper knows gamma == 1.0. Saves 3 fragment-stage pow()
calls in the default-gamma case (the common case).
Optional 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. Saves 1 vec3 multiply, 1 vec3 add, and 1 vec3
max per fragment.
Optional ReadonlyisCamera projection mode at build time. When true (orthographic),
the factory emits only the ortho pixel-width branch; when false
or undefined (perspective), only the perspective branch is
emitted. Eliminates the runtime int(uIsOrtho).select(...) and
its .toVar() materialisation of the unused branch. Wrapper
triggers rebuildGraph() whenever the camera mode flips.
Optional ReadonlyjoinJoin style at degree-2 polyline joints (#790). BUILD-time here, unlike the
GLSL twin's uLineJoin uniform: the TSL vertex stage is traced in a single
Fn() that deliberately avoids structural select() branches, so the
style follows the same graph-variant pattern as isOrtho and the wrapper
calls rebuildGraph() when it changes. Omitted ⇒ the session default.
When undefined, derived from
blendingMode === 'max'. Explicit config still wins.