Taos API Reference
    Preparing search index...

    Class GeometryPass

    Deferred geometry pass for material-bearing meshes (render-graph version).

    Rasterizes DrawItems into the GBuffer (albedo+roughness, normal+metallic, depth32float). Each draw supplies its own Material; pipelines are cached per material.shaderId. Camera uniforms and per-draw model uniforms are owned by the pass.

    Hierarchy (View Summary)

    • Pass<GeometryDeps, GeometryOutputs>
      • GeometryPass
    Index

    Properties

    name: "GeometryPass" = 'GeometryPass'

    Human-readable identifier used in graph node labels and error messages.

    Accessors

    • get cullArgs(): { buffer: GPUBuffer; count: number } | null

      Debug/stats: the indirect args buffer + instance count from the last addToGraph while GPU culling was active, or null otherwise. Each arg set is INDIRECT_ARG_BYTES; the instanceCount field (u32 at i*5 + 1) is 0 for a culled instance and 1 for a drawn one. The buffer is COPY_SRC.

      Returns { buffer: GPUBuffer; count: number } | null

    Methods

    • Set per-fragment clipping (CesiumJS-style clipping planes + polygon) for this pass. Pass the packed uniform from GeoClipping.pack (call it every frame — the floating origin shifts); pass null to disable. Applies to every opaque draw the pass renders, which for a geo scene is the 3D tiles and the quantized-mesh terrain.

      Parameters

      Returns void

    • Insert the pass into graph for one frame. Implementations call graph.addPass(name, type, b => { ... }) exactly once and use the supplied PassBuilder to declare reads, writes, transient resources, and the execute callback.

      Parameters

      • graph: RenderGraph

        Graph being built this frame.

      • deps: GeometryDeps = {}

        Pass-specific dependency record (handles, scene data, etc.).

      Returns GeometryOutputs

      Pass-specific output record (typically a set of handles downstream passes will consume).