mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-07-12 08:05:53 +00:00
This CL changes the MSL emission for struct initializers to emit the struct name first. `const a = {.f=float3(1)}` becomes `const a = Normals{.f=float3(1)}`. This fixes an issues where the initialization happens inside an array which the downstream compiler rejected without the explicit struct naming. Bug: tint:1641 Change-Id: I948b9ca94f4b89eac6d5bbbaa615b3d71d50c737 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/98760 Commit-Queue: Dan Sinclair <dsinclair@chromium.org> Reviewed-by: Ben Clayton <bclayton@google.com>
12 lines
196 B
WebGPU Shading Language
12 lines
196 B
WebGPU Shading Language
struct Normals {
|
|
f : vec3<f32>,
|
|
}
|
|
const faceNormals = array<Normals, 1>(
|
|
Normals(vec3(0, 0, 1)),
|
|
);
|
|
|
|
@vertex
|
|
fn main() -> @builtin(position) vec4<f32> {
|
|
return vec4(faceNormals[0].f, 1.);
|
|
}
|