SPIRV-Cross/reference/shaders-hlsl-no-opt/asm/frag/vector-shuffle-undef-index.asm.frag
Hans-Kristian Arntzen 8eb33c8017 Support -1 index in OpVectorShuffle.
-1 (0xffffffff) literal means the component should be undefined.
Since we cannot express undefined directly, just use a 0 literal in the
appropriate type.
2019-03-25 10:17:05 +01:00

29 lines
529 B
GLSL

static float4 FragColor;
static float4 vFloat;
struct SPIRV_Cross_Input
{
float4 vFloat : TEXCOORD0;
};
struct SPIRV_Cross_Output
{
float4 FragColor : SV_Target0;
};
float4 undef;
void frag_main()
{
FragColor = float4(undef.x, vFloat.y, 0.0f, vFloat.w) + float4(vFloat.z, vFloat.y, 0.0f, vFloat.w);
}
SPIRV_Cross_Output main(SPIRV_Cross_Input stage_input)
{
vFloat = stage_input.vFloat;
frag_main();
SPIRV_Cross_Output stage_output;
stage_output.FragColor = FragColor;
return stage_output;
}