#include <metal_stdlib>

using namespace metal;
void textureSampleCompare_a3ca7e(depthcube_array<float, access::sample> tint_symbol, sampler tint_symbol_1, device float* const tint_symbol_2) {
  float res = tint_symbol.sample_compare(tint_symbol_1, float3(1.0f), 1, 1.0f);
  *(tint_symbol_2) = res;
}

fragment void fragment_main(depthcube_array<float, access::sample> tint_symbol_3 [[texture(0)]], sampler tint_symbol_4 [[sampler(0)]], device float* tint_symbol_5 [[buffer(0)]]) {
  textureSampleCompare_a3ca7e(tint_symbol_3, tint_symbol_4, tint_symbol_5);
  return;
}

