Skip to content

TgpuRenderPipeline

Defined in: packages/typegpu/src/core/pipeline/renderPipeline.ts:132

  • TgpuNamable.SelfResolvable.Timeable

Targets = never

readonly [$internal]: RenderPipelineInternals

Defined in: packages/typegpu/src/core/pipeline/renderPipeline.ts:134

SelfResolvable.[$internal]


readonly hasIndexBuffer: boolean

Defined in: packages/typegpu/src/core/pipeline/renderPipeline.ts:136


readonly resourceType: "render-pipeline"

Defined in: packages/typegpu/src/core/pipeline/renderPipeline.ts:135

[$resolve](ctx): ResolvedSnippet

Defined in: packages/typegpu/src/types.ts:338

ResolutionCtx

ResolvedSnippet

SelfResolvable.[$resolve]


$name(label): this

Defined in: packages/typegpu/src/shared/meta.ts:97

string

this

TgpuNamable.$name


draw(vertexCount, instanceCount?, firstVertex?, firstInstance?): void

Defined in: packages/typegpu/src/core/pipeline/renderPipeline.ts:186

number

number

number

number

void


drawIndexedIndirect(indirectBuffer, indirectOffset?): void

Defined in: packages/typegpu/src/core/pipeline/renderPipeline.ts:214

Draws indexed primitives using parameters read from a buffer. The buffer must contain 5 consecutive 32-bit integer values (indexCount u32, instanceCount u32, firstIndex u32, baseVertex i32, firstInstance u32). To get the correct offset within complex data structures, use d.memoryLayoutOf(...).

Buffer marked with ‘indirect’ usage containing draw parameters or raw GPUBuffer

GPUBuffer | TgpuBuffer<BaseData> & IndirectFlag

PrimitiveOffsetInfo pointing to the first draw parameter. If not provided, starts at offset 0. To obtain safe offsets, use d.memoryLayoutOf(...).

number | PrimitiveOffsetInfo

void


drawIndirect(indirectBuffer, indirectOffset?): void

Defined in: packages/typegpu/src/core/pipeline/renderPipeline.ts:201

Draws primitives using parameters read from a buffer. The buffer must contain 4 consecutive u32 values (vertexCount, instanceCount, firstVertex, firstInstance). To get the correct offset within complex data structures, use d.memoryLayoutOf(...).

Buffer marked with ‘indirect’ usage containing draw parameters or raw GPUBuffer

GPUBuffer | TgpuBuffer<BaseData> & IndirectFlag

PrimitiveOffsetInfo pointing to the first draw parameter. If not provided, starts at offset 0. To obtain safe offsets, use d.memoryLayoutOf(...).

number | PrimitiveOffsetInfo

void


toString(): string

Defined in: packages/typegpu/src/types.ts:339

string

SelfResolvable.toString


with<TData>(vertexLayout, buffer): this

Defined in: packages/typegpu/src/core/pipeline/renderPipeline.ts:138

TData extends WgslArray<BaseData> | Disarray<BaseData>

TgpuVertexLayout<TData>

GPUBuffer | TgpuBuffer<TData> & VertexFlag

this

with<Entries>(bindGroupLayout, bindGroup): this

Defined in: packages/typegpu/src/core/pipeline/renderPipeline.ts:146

Entries extends Record<string, TgpuLayoutEntry | null>

TgpuBindGroupLayout<Entries>

TgpuBindGroup<Entries>

this

with(bindGroupLayout, bindGroup): this

Defined in: packages/typegpu/src/core/pipeline/renderPipeline.ts:150

TgpuBindGroupLayout

GPUBindGroup

this

with(bindGroup): this

Defined in: packages/typegpu/src/core/pipeline/renderPipeline.ts:151

TgpuBindGroup

this

with(encoder): this

Defined in: packages/typegpu/src/core/pipeline/renderPipeline.ts:152

GPUCommandEncoder

this

with(pass): this

Defined in: packages/typegpu/src/core/pipeline/renderPipeline.ts:153

GPURenderPassEncoder

this

with(bundleEncoder): this

Defined in: packages/typegpu/src/core/pipeline/renderPipeline.ts:154

GPURenderBundleEncoder

this


withColorAttachment(attachment): this

Defined in: packages/typegpu/src/core/pipeline/renderPipeline.ts:168

Attaches texture views to the pipeline’s targets (outputs).

FragmentOutToColorAttachment<Targets>

The object should match the shape returned by the fragment shader, with values matching the ColorAttachment type.

this

// Draw 3 vertices onto the context's canvas
pipeline
.withColorAttachment({ view: context })
.draw(3)

withDepthStencilAttachment(attachment): this

Defined in: packages/typegpu/src/core/pipeline/renderPipeline.ts:170

DepthStencilAttachment

this


withIndexBuffer(buffer, offsetElements?, sizeElements?): TgpuRenderPipeline<Targets> & HasIndexBuffer

Defined in: packages/typegpu/src/core/pipeline/renderPipeline.ts:174

TgpuBuffer<BaseData> & IndexFlag

number

number

TgpuRenderPipeline<Targets> & HasIndexBuffer

withIndexBuffer(buffer, indexFormat, offsetBytes?, sizeBytes?): TgpuRenderPipeline<Targets> & HasIndexBuffer

Defined in: packages/typegpu/src/core/pipeline/renderPipeline.ts:179

GPUBuffer

GPUIndexFormat

number

number

TgpuRenderPipeline<Targets> & HasIndexBuffer


withPerformanceCallback(callback): this

Defined in: packages/typegpu/src/core/pipeline/timeable.ts:6

(start, end) => void | Promise<void>

this

Timeable.withPerformanceCallback


withStencilReference(reference): this

Defined in: packages/typegpu/src/core/pipeline/renderPipeline.ts:172

number

this


withTimestampWrites(options): this

Defined in: packages/typegpu/src/core/pipeline/timeable.ts:8

number

number

TgpuQuerySet<"timestamp"> | GPUQuerySet

this

Timeable.withTimestampWrites