mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-08-04 11:15:46 +00:00
These have been deprecated, and their usages in Dawn, CTS and samples have been updated. Fixed: tint:846 Change-Id: I74b831fd5be2e7ca02e8208835eac8beddcef9af Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/54325 Kokoro: Kokoro <noreply+kokoro@google.com> Reviewed-by: David Neto <dneto@google.com> Reviewed-by: James Price <jrprice@google.com>
36 lines
839 B
WebGPU Shading Language
36 lines
839 B
WebGPU Shading Language
[[block]]
|
|
struct Constants {
|
|
level : i32;
|
|
};
|
|
|
|
[[group(0), binding(0)]] var<uniform> constants : Constants;
|
|
|
|
[[group(0), binding(1)]] var myTexture : texture_2d_array<f32>;
|
|
|
|
[[block]]
|
|
struct Result {
|
|
values : [[stride(4)]] array<f32>;
|
|
};
|
|
|
|
[[group(0), binding(3)]] var<storage, read_write> result : Result;
|
|
|
|
[[stage(compute)]]
|
|
fn main([[builtin(global_invocation_id)]] GlobalInvocationID : vec3<u32>) {
|
|
var flatIndex : u32 = ((((2u * 2u) * GlobalInvocationID.z) + (2u * GlobalInvocationID.y)) + GlobalInvocationID.x);
|
|
flatIndex = (flatIndex * 1u);
|
|
var texel : vec4<f32> = textureLoad(myTexture, vec2<i32>(GlobalInvocationID.xy), 0, 0);
|
|
{
|
|
var i : u32 = 0u;
|
|
loop {
|
|
if (!((i < 1u))) {
|
|
break;
|
|
}
|
|
result.values[(flatIndex + i)] = texel.r;
|
|
|
|
continuing {
|
|
i = (i + 1u);
|
|
}
|
|
}
|
|
}
|
|
}
|