Select the pick depth convention. true = surface ('normal')
blending: write the real projected depth so the FRONT-MOST splat
wins — matching the depth-sorted occluding surface the user sees.
false (default) = brightness-as-depth so the BRIGHTEST splat wins
— correct for the commutative modes (additive/max/luminous).
Synced per pick render by PickingSystem.renderPickBuffer().
Clone this picking material. The inherited Material.clone() calls
the constructor with no config (throws on config.nodeId), so —
mirroring the visual GSplatMaterial.clone() pattern — construct
with the same nodeId and copy the runtime-tuned uniform values
(camera params, dilation, surface-pick depth) across explicitly.
Update camera-dependent uniforms (viewport, near cull, pixel ratio).
Push again after a resize, a near-cull change or a pixel-ratio change. The
projection itself — FOV, ortho zoom, off-axis frustum AND the
ortho/perspective kind — is read in shader from the projection matrix of
the draw (luxarIsOrthoProjection() / isOrthoProjectionTSL()), so a
camera-kind flip or a draw through another camera needs no push.
Viewport resolution in pixels
OptionalnearCull: number
Near-fade start distance in world units (consumed by all four geometry materials via the shared perspectiveNearFade)
Physical render-target pixels per CSS pixel; screen-space appearance constants scale with it above 1×
Rebind the splat data texture (plain uniform update).