Advanced search tips: use spaces to require multiple terms (AND), | for alternatives (OR), wrap phrases in quotes (="a b"), =term for exact match, 'term to include, !term to exclude, ^term to match prefix, !^term to exclude prefix, .ext$ to match suffix, and !.ext$ to exclude suffix.

sparse_buffer_update.wgsl

Bindings

dest_buffer

#
@group(0)
@binding(0)
var<storage, read_write> dest_buffer: array<u32>

src_buffer

#
@group(0)
@binding(1)
var<storage> src_buffer: array<u32>

indices

#
@group(0)
@binding(2)
var<storage> indices: array<u32>

metadata

#
@group(0)
@binding(3)
var<uniform> metadata: SparseBufferUpdateMetadata

Structures

SparseBufferUpdateMetadata

#

Metadata that describes the update.

struct SparseBufferUpdateMetadata {
element_size: u32 ,
updated_page_count: u32 ,
page_size_log2: u32 ,
}

Functions

main

#
@compute
Runs custom parallel code on the GPU, not limited to graphics
@workgroup_size(256, 1, 1)
Defines the size of a thread group. One to three numbers: width (x), height (y), and depth (z). Missing values default to 1
fn main (
@builtin(global_invocation_id)
global_id: vec3<u32>
)