SPIRV-Cross/reference/shaders-msl/frag/spec-constant-block-size.frag
Hans-Kristian Arntzen dd603eab58 Support spec constant array size in blocks.
Won't really be correct if the spec constant is changed outside
SPIRV-Cross, but nothing we can do about that, really.
2018-02-23 15:11:45 +01:00

28 lines
417 B
GLSL

#include <metal_stdlib>
#include <simd/simd.h>
using namespace metal;
struct SpecConstArray
{
float4 samples[2];
};
struct main0_in
{
int Index [[user(locn0)]];
};
struct main0_out
{
float4 FragColor [[color(0)]];
};
fragment main0_out main0(main0_in in [[stage_in]], constant SpecConstArray& _15 [[buffer(0)]])
{
main0_out out = {};
out.FragColor = _15.samples[in.Index];
return out;
}