Builtin values

Builtin values

16 names

The @builtin(...) ids the pipeline supplies, with the stage each belongs to.

The signature and the sentence under each name are the compiler's own text at commit 26de7be8.

@builtin("vertex_index")
The index of the current vertex within its draw call.
@builtin("instance_index")
The index of the current instance within its draw call.
@builtin("position")
The vertex's clip-space position (vertex output) or the fragment's window-space position (fragment input).
@builtin("front_facing")
Whether the current fragment belongs to a front-facing primitive.
@builtin("frag_depth")
Overrides the fragment's depth value.
@builtin("sample_index")
The index of the sample currently being processed, under multisampling.
@builtin("sample_mask")
The set of samples covered by the current fragment invocation.
@builtin("primitive_index")
The index of the primitive the current fragment belongs to.
@builtin("local_invocation_id")
The current invocation's id within its workgroup, as a 3-component vector.
@builtin("local_invocation_index")
The current invocation's flattened index within its workgroup.
@builtin("global_invocation_id")
The current invocation's id across the entire compute dispatch.
@builtin("workgroup_id")
The id of the current invocation's workgroup within the dispatch.
@builtin("num_workgroups")
The number of workgroups dispatched, as given to the dispatch call.
@builtin("subgroup_invocation_id")
The current invocation's index within its subgroup.
@builtin("subgroup_size")
The number of invocations in the current subgroup.
@builtin("clip_distances")
Per-vertex clip distances against the pipeline's enabled user clip planes: a vertex output of array<f32, N> with N from 1 to 8.

Every entry on these pages is read from the compiler at the pinned commit, and none of it is typed here.

Edit this page Report a problem