mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-08-05 03:35:56 +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>
20 lines
398 B
GLSL
20 lines
398 B
GLSL
#version 310 es
|
|
|
|
struct Normals {
|
|
vec3 f;
|
|
};
|
|
|
|
vec4 tint_symbol() {
|
|
Normals tint_symbol_1[1] = Normals[1](Normals(vec3(0.0f, 0.0f, 1.0f)));
|
|
return vec4(tint_symbol_1[0].f, 1.0f);
|
|
}
|
|
|
|
void main() {
|
|
gl_PointSize = 1.0;
|
|
vec4 inner_result = tint_symbol();
|
|
gl_Position = inner_result;
|
|
gl_Position.y = -(gl_Position.y);
|
|
gl_Position.z = ((2.0f * gl_Position.z) - gl_Position.w);
|
|
return;
|
|
}
|