Documentation
    Preparing search index...

    Interface PickingRendererHost

    The live window a WebglRenderer opens for its picking services — the narrow slice of renderer state an id pass genuinely needs, and nothing else.

    Every member is a live accessor (a method, so the renderer implements the whole window as eight this-capturing arrows), not a snapshot, because the caches change identity under the renderer's feet: a §61 context restore builds new caches (the old handles died with the context), so a service that captured geometries once would draw with a cache the renderer has already abandoned. A service re-reads all of them per pass, and detects a lost-and-restored context by cache identity (gl-picking.ts).

    Sharing the renderer's caches — rather than the service owning twins — is deliberate: the id pass draws the same geometries the frame drew, so a second GeometryCache would hold a second VAO and a second set of buffers per geometry, doubling GPU memory to draw the same bytes.

    interface PickingRendererHost {
        context(): WebglContext | null;
        contextLost(): boolean;
        disposed(): boolean;
        geometries(): GeometryCache | null;
        particleBatches(): ParticleBatchCache | null;
        renderTargets(): RenderTargetCache | null;
        surfaceHeight(): number;
        surfaceWidth(): number;
    }
    Index
    • Drawing-buffer width in device pixels — what §48 rectangles resolve against.

      Returns number