1#include <metal_stdlib> 2#include <simd/simd.h> 3 4using namespace metal; 5 6struct main0_out 7{ 8 float4 FragColor [[color(0)]]; 9}; 10 11struct main0_in 12{ 13 float4 vUV [[user(locn0)]]; 14}; 15 16fragment main0_out main0(main0_in in [[stage_in]], texturecube<float> cubeSampler [[texture(0)]], texturecube_array<float> cubeArraySampler [[texture(1)]], texture2d_array<float> texArraySampler [[texture(2)]], sampler cubeSamplerSmplr [[sampler(0)]], sampler cubeArraySamplerSmplr [[sampler(1)]], sampler texArraySamplerSmplr [[sampler(2)]]) 17{ 18 main0_out out = {}; 19 out.FragColor = (cubeSampler.sample(cubeSamplerSmplr, in.vUV.xyz) + cubeArraySampler.sample(cubeArraySamplerSmplr, in.vUV.xyz, uint(round(in.vUV.w)))) + texArraySampler.sample(texArraySamplerSmplr, in.vUV.xyz.xy, uint(round(in.vUV.xyz.z))); 20 return out; 21} 22 23