27 lines
471 B
WebGPU Shading Language
27 lines
471 B
WebGPU Shading Language
struct Constants {
|
|
zero : u32,
|
|
}
|
|
|
|
@group(1) @binding(0) var<uniform> constants : Constants;
|
|
|
|
struct Result {
|
|
value : u32,
|
|
}
|
|
|
|
@group(1) @binding(1) var<storage, write> result : Result;
|
|
|
|
struct TestData {
|
|
data : array<atomic<i32>, 3>,
|
|
}
|
|
|
|
@group(0) @binding(0) var<storage, read_write> s : TestData;
|
|
|
|
fn runTest() -> i32 {
|
|
return atomicLoad(&(s.data[(0u + u32(constants.zero))]));
|
|
}
|
|
|
|
@stage(compute) @workgroup_size(1)
|
|
fn main() {
|
|
result.value = u32(runTest());
|
|
}
|