35 lines
995 B
Plaintext
35 lines
995 B
Plaintext
#include <metal_stdlib>
|
|
#pragma clang diagnostic ignored "-Wparentheses-equality"
|
|
using namespace metal;
|
|
struct xlatMtlShaderInput {
|
|
float4 uvHi;
|
|
half4 uvMed;
|
|
};
|
|
struct xlatMtlShaderOutput {
|
|
half4 _fragColor [[color(0)]];
|
|
};
|
|
struct xlatMtlShaderUniform {
|
|
};
|
|
;
|
|
fragment xlatMtlShaderOutput xlatMtlMain (xlatMtlShaderInput _mtl_i [[stage_in]], constant xlatMtlShaderUniform& _mtl_u [[buffer(0)]]
|
|
, texture2d<half> tex [[texture(0)]], sampler _mtlsmp_tex [[sampler(0)]])
|
|
{
|
|
xlatMtlShaderOutput _mtl_o;
|
|
half4 tmpvar_1 = 0;
|
|
half4 tmpvar_2 = 0;
|
|
tmpvar_2 = tex.sample(_mtlsmp_tex, (float2)(_mtl_i.uvHi.xy), level(0.0));
|
|
tmpvar_1 = tmpvar_2;
|
|
half4 tmpvar_3 = 0;
|
|
tmpvar_3 = tex.sample(_mtlsmp_tex, (float2)(_mtl_i.uvMed.xy), level(_mtl_i.uvMed.z));
|
|
_mtl_o._fragColor = (tmpvar_1 + tmpvar_3);
|
|
return _mtl_o;
|
|
}
|
|
|
|
|
|
// stats: 1 alu 2 tex 0 flow
|
|
// inputs: 2
|
|
// #0: uvHi (high float) 4x1 [-1]
|
|
// #1: uvMed (medium float) 4x1 [-1]
|
|
// textures: 1
|
|
// #0: tex (low 2d) 0x0 [-1] loc 0
|