Luxar Viewer API Documentation - v2026.10.19
    Preparing search index...

    Hierarchy

    • ShaderMaterial
      • GSplatPickingMaterial

    Implements

    Index
    • 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().

      Parameters

      • on: boolean

      Returns void

    • 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.

      Returns this

    • 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.

      Parameters

      • resolution: Vector2

        Viewport resolution in pixels

      • OptionalnearCull: number

        Near-fade start distance in world units (consumed by all four geometry materials via the shared perspectiveNearFade)

      • pixelRatio: number = 1

        Physical render-target pixels per CSS pixel; screen-space appearance constants scale with it above 1×

      Returns void