SPIRV-Cross/shaders-msl/vert/signedness-mismatch.shader-inputs.vert
Chip Davis 5281d9997e MSL: Fix up input variables' vector lengths in all stages.
Metal is picky about interface matching. If the types don't match
exactly, down to the number of vector components, Metal fails pipline
compilation. To support pipelines where the number of components
consumed by the fragment shader is less than that produced by the vertex
shader, we have to fix up the fragment shader to accept all the
components produced.
2020-06-16 14:50:30 -05:00

15 lines
306 B
GLSL

#version 450
#extension GL_AMD_gpu_shader_int16 : require
layout(location = 0) in int16_t a;
layout(location = 1) in ivec2 b;
layout(location = 2) in uint16_t c[2];
layout(location = 4) in uvec4 d[2];
void main()
{
gl_Position = vec4(float(int(a)), float(b.x), float(uint(c[1])), float(d[0].w));
}