Update examples for recent WGSL changes

* Use new entry point IO syntax
* Use `let` instead of `const`
* Remove `-> void` from function headers

Bug: dawn:755
Change-Id: I39b5687a342ea2298c3d2e85517c9b8d9017727e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/47500
Commit-Queue: James Price <jrprice@google.com>
Auto-Submit: James Price <jrprice@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
This commit is contained in:
James Price
2021-04-13 14:52:44 +00:00
committed by Commit Bot service account
parent f3fe648675
commit 9e0debd91e
6 changed files with 64 additions and 81 deletions

View File

@@ -113,34 +113,30 @@ void init() {
};
[[group(0), binding(1)]] var<uniform> model : Model;
[[location(0)]] var<in> pos : vec3<f32>;
[[location(1)]] var<in> col : vec3<f32>;
struct VertexOut {
[[location(2)]] f_col : vec3<f32>;
[[builtin(position)]] Position : vec4<f32>;
};
[[location(2)]] var<out> f_col : vec3<f32>;
[[builtin(position)]] var<out> Position : vec4<f32>;
[[stage(vertex)]] fn main() {
f_col = col;
Position = camera.proj * camera.view * model.matrix * vec4<f32>(pos, 1.0);
return;
[[stage(vertex)]] fn main(
[[location(0)]] pos : vec3<f32>,
[[location(1)]] col : vec3<f32>) -> VertexOut {
var output : VertexOut;
output.f_col = col;
output.Position = camera.proj * camera.view * model.matrix * vec4<f32>(pos, 1.0);
return output;
})");
wgpu::ShaderModule fsModule = utils::CreateShaderModule(device, R"(
[[location(0)]] var<out> FragColor : vec4<f32>;
[[location(2)]] var<in> f_col : vec3<f32>;
[[stage(fragment)]] fn main() {
FragColor = vec4<f32>(f_col, 1.0);
return;
[[stage(fragment)]] fn main(
[[location(2)]] f_col : vec3<f32>) -> [[location(0)]] vec4<f32> {
return vec4<f32>(f_col, 1.0);
})");
wgpu::ShaderModule fsReflectionModule = utils::CreateShaderModule(device, R"(
[[location(0)]] var<out> FragColor : vec4<f32>;
[[location(2)]] var<in> f_col : vec3<f32>;
[[stage(fragment)]] fn main() {
FragColor = vec4<f32>(mix(f_col, vec3<f32>(0.5, 0.5, 0.5), vec3<f32>(0.5, 0.5, 0.5)), 1.0);
return;
[[stage(fragment)]] fn main(
[[location(2)]] f_col : vec3<f32>) -> [[location(0)]] vec4<f32> {
return vec4<f32>(mix(f_col, vec3<f32>(0.5, 0.5, 0.5), vec3<f32>(0.5, 0.5, 0.5)), 1.0);
})");
wgpu::VertexAttribute attributes[2];