Search across packages, versions, files, declarations, and comments. Use multiple terms to narrow results (AND), and add @vertex, @fragment, or @compute to filter by shader stage.

Constants

half_size

#
const half_size: vec3 = vec3(0.1)

min

#
const min: AbstractInt = -half_size

max

#
const max: AbstractInt = half_size

vertices

#
const vertices: AbstractFloat = array( // xyz, normal.xyz, uv.xy // Front min.x, min.y, max.z, 0.0, 0.0, 1.0, 0.0, 0.0, max.x, min.y, max.z, 0.0, 0.0, 1.0, 1.0, 0.0, max.x, max.y, max.z, 0.0, 0.0, 1.0, 1.0, 1.0, min.x, max.y, max.z, 0.0, 0.0, 1.0, 0.0, 1.0, // Back min.x, max.y, min.z, 0.0, 0.0, -1.0, 1.0, 0.0, max.x, max.y, min.z, 0.0, 0.0, -1.0, 0.0, 0.0, max.x, min.y, min.z, 0.0, 0.0, -1.0, 0.0, 1.0, min.x, min.y, min.z, 0.0, 0.0, -1.0, 1.0, 1.0, // Right max.x, min.y, min.z, 1.0, 0.0, 0.0, 0.0, 0.0, max.x, max.y, min.z, 1.0, 0.0, 0.0, 1.0, 0.0, max.x, max.y, max.z, 1.0, 0.0, 0.0, 1.0, 1.0, max.x, min.y, max.z, 1.0, 0.0, 0.0, 0.0, 1.0, // Left min.x, min.y, max.z, -1.0, 0.0, 0.0, 1.0, 0.0, min.x, max.y, max.z, -1.0, 0.0, 0.0, 0.0, 0.0, min.x, max.y, min.z, -1.0, 0.0, 0.0, 0.0, 1.0, min.x, min.y, min.z, -1.0, 0.0, 0.0, 1.0, 1.0, // Top max.x, max.y, min.z, 0.0, 1.0, 0.0, 1.0, 0.0, min.x, max.y, min.z, 0.0, 1.0, 0.0, 0.0, 0.0, min.x, max.y, max.z, 0.0, 1.0, 0.0, 0.0, 1.0, max.x, max.y, max.z, 0.0, 1.0, 0.0, 1.0, 1.0, // Bottom max.x, min.y, max.z, 0.0, -1.0, 0.0, 0.0, 0.0, min.x, min.y, max.z, 0.0, -1.0, 0.0, 1.0, 0.0, min.x, min.y, min.z, 0.0, -1.0, 0.0, 1.0, 1.0, max.x, min.y, min.z, 0.0, -1.0, 0.0, 0.0, 1.0 )

indices

#
const indices: AbstractInt = array( 0, 1, 2, 2, 3, 0, // front 4, 5, 6, 6, 7, 4, // back 8, 9, 10, 10, 11, 8, // right 12, 13, 14, 14, 15, 12, // left 16, 17, 18, 18, 19, 16, // top 20, 21, 22, 22, 23, 20, // bottom )

Structures

PrimitiveOutput

#
struct PrimitiveOutput {
@builtin(triangle_indices)
indices: vec3<u32> ,
@builtin(cull_primitive)
cull: bool ,
@per_primitive()
@location(3)
colorMask: vec4<f32> ,
}

MeshOutput

#
struct MeshOutput {
@builtin(vertices)
vertices: array<VertexOutput, 24> ,
@builtin(primitives)
primitives: array<PrimitiveOutput, 12> ,
@builtin(vertex_count)
vertex_count: u32 ,
@builtin(primitive_count)
primitive_count: u32 ,
}

MeshInput

#
struct MeshInput {
@builtin(global_invocation_id)
global_invocation_id: vec3u ,
@builtin(num_workgroups)
num_workgroups: vec3u ,
@builtin(workgroup_id)
workgroup_id: vec3u ,
}

Functions

position_world_to_clip

#
fn position_world_to_clip (
world_pos: vec3<f32>
) -> vec4<f32>

mesh_position_local_to_world

#
fn mesh_position_local_to_world (
world_from_local: mat4x4<f32>
, 
vertex_position: vec4<f32>
) -> vec4<f32>

mesh

#
fn mesh (
mesh_input: MeshInput
)
Contents