1layout(key) float zero = floor(0.5); 2layout(key) float one = ceil(0.5); 3 4half4 main() { 5 half4x4 m = half4x4(one); 6 half4 n = half4(zero); 7 bool4 b = bool4(true); 8 9 n.x = abs(n.x); 10 b.z = all(b.xy); 11 b.w = any(b.xyz); 12 n.xy = atan(n.xy); 13 n.zwx = atan(n.yyy, n.zzz); 14 n.xyzw = ceil(n.xyzw); 15 n.x = clamp(n.y, n.z, n.w); 16 n.y = cos(n.y); 17 n.w = cross(n.xy, n.zw); 18 n.xyz = degrees(n.xyz); 19 n.w = distance(n.xz, n.yw); 20 n.x = dot(n.yzw, n.yzw); 21 b.xyz = equal(b.xxx, b.www); 22 n.yz = exp(n.wx); 23 n.zw = exp2(n.xy); 24 n.x = faceforward(n.y, n.z, n.w); 25 n = floor(n); 26 n.yzw = fract(n.yzw); 27 b.xy = greaterThan(n.xy, n.zw); 28 b.xy = greaterThanEqual(n.xy, n.zw); 29 n = inversesqrt(n); 30 m = inverse(m); 31 n.w = length(n.zyyx); 32 b.xy = lessThan(n.xy, n.zw); 33 b.xy = lessThanEqual(n.xy, n.zw); 34 n.x = log(n.x); 35 n.y = max(n.z, n.w); 36 n.z = min(n.x, n.y); 37 n.w = mod(n.y, n.z); 38 n = normalize(n); 39 b = not(b); 40 n.x = pow(n.y, n.z); 41 n.xyz = radians(n.yzw); 42 n.xy = reflect(n.xy, n.zw); 43 n.wz = refract(n.xy, n.zw, 2); 44 n = saturate(n); 45 n.x = sign(n.x); 46 n.y = sin(n.y); 47 n.zw = smoothstep(n.xx, n.yy, n.zz); 48 n = sqrt(n); 49 n.xy = step(n.xy, n.zw); 50 n.x = tan(n.x); 51 n = unpremul(n.aaaa); 52 53 return half4(0, 1, 0, 1); 54} 55