| #include <metal_stdlib> |
| |
| using namespace metal; |
| int3 tint_clamp(int3 e, int3 low, int3 high) { |
| return min(max(e, low), high); |
| } |
| |
| float4 textureLoad_f1c549(texture3d<float, access::read_write> tint_symbol) { |
| float4 res = tint_symbol.read(uint3(tint_clamp(int3(1), int3(0), int3((uint3(tint_symbol.get_width(), tint_symbol.get_height(), tint_symbol.get_depth()) - uint3(1u)))))); |
| return res; |
| } |
| |
| fragment void fragment_main(device float4* tint_symbol_1 [[buffer(0)]], texture3d<float, access::read_write> tint_symbol_2 [[texture(0)]]) { |
| *(tint_symbol_1) = textureLoad_f1c549(tint_symbol_2); |
| return; |
| } |
| |
| kernel void compute_main(device float4* tint_symbol_3 [[buffer(0)]], texture3d<float, access::read_write> tint_symbol_4 [[texture(0)]]) { |
| *(tint_symbol_3) = textureLoad_f1c549(tint_symbol_4); |
| return; |
| } |
| |