Select the pick depth convention (SurfacePickAwareMaterial): true
under the depth-ordered surface modes (opaque / normal) writes the
real projected depth so the FRONT-MOST element wins, as the user sees
it; false (default) keeps brightness-as-depth so the BRIGHTEST wins,
right for the commutative modes. Synced per pick render by
PickingSystem.renderPickBuffer().
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×
keep pick footprint in lock-step with the visible footprint by mirroring radius scale updates. Called from the commit helpers when geometry dtype scaling changes (e.g. placeholder → normalized Uint8 commit).
Rebind the point data texture (plain uniform update). Mirrors
GSplatPickingMaterial.updateSplatTexture.
Clone this picking material. The inherited
Material.clone()calls the constructor with no config (throws onconfig.nodeId), so — mirroringGSplatPickingMaterial.clone()— construct with the same config and copy the runtime-tuned uniform values (camera params) across explicitly.