skia2/tests/sksl/shared/UniformBuffers.glsl
John Stiles da5cdf6a70 Add default uniform binding value for Metal/SPIR-V.
This allows interface blocks in Metal to compile even if
`layout(binding=...)` is not specified. It will also be used in SPIR-V
in the followup CL, when an interface block is automatically synthesized
for top-level uniforms.

This CL also reorganizes the unit tests around uniforms a bit.

Change-Id: Ia898c536b454dda6f51677e232a8f6e6c3606022
Bug: skia:11225
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/360778
Commit-Queue: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2021-01-28 19:23:49 +00:00

12 lines
263 B
GLSL

out vec4 sk_FragColor;
layout (binding = 0) uniform testBlock {
layout (offset = 0) float x;
layout (offset = 4) int w;
layout (offset = 16) float[2] y;
layout (offset = 48) mat3 z;
};
void main() {
sk_FragColor = vec4(x, y[0], y[1], 0.0);
}