| diagnostic(off, derivative_uniformity); |
| |
| var<private> u_xlat0 : vec4<f32>; |
| |
| struct _positionNormalBuffer_type { |
| value : array<u32, 4u>, |
| } |
| |
| struct _positionNormalBuffer { |
| _positionNormalBuffer_buf : array<_positionNormalBuffer_type>, |
| } |
| |
| @group(0u) @binding(5u) var<storage, read> v : _positionNormalBuffer; |
| |
| var<private> u_xlat1 : vec4<f32>; |
| |
| var<private> u_xlat2 : vec4<f32>; |
| |
| struct VGlobals_1 { |
| _WorldSpaceCameraPos : vec3<f32>, |
| unity_MatrixInvV : mat4x4<f32>, |
| unity_MatrixVP : mat4x4<f32>, |
| _ProbeSize : f32, |
| _ForceDebugNormalViewBias : i32, |
| } |
| |
| @group(1u) @binding(1u) var<uniform> v_1 : VGlobals_1; |
| |
| var<private> u_xlat42 : f32; |
| |
| var<private> u_xlat3 : vec3<f32>; |
| |
| struct ShaderVariablesProbeVolumes { |
| _PoolDim_CellInMeters : vec4<f32>, |
| _RcpPoolDim_Padding : vec4<f32>, |
| _MinEntryPos_Noise : vec4<f32>, |
| _IndicesDim_IndexChunkSize : vec4<f32>, |
| _Biases_CellInMinBrick_MinBrickSize : vec4<f32>, |
| _LeakReductionParams : vec4<f32>, |
| _Weight_MinLoadedCellInEntries : vec4<f32>, |
| _MaxLoadedCellInEntries_FrameIndex : vec4<f32>, |
| _NormalizationClamp_IndirectionEntryDim_Padding : vec4<f32>, |
| } |
| |
| @group(1u) @binding(3u) var<uniform> v_2 : ShaderVariablesProbeVolumes; |
| |
| var<private> u_xlatb4 : vec3<bool>; |
| |
| var<private> u_xlatb5 : vec3<bool>; |
| |
| var<private> u_xlatb42 : bool; |
| |
| var<private> u_xlat4 : vec3<f32>; |
| |
| var<private> u_xlati4 : vec3<i32>; |
| |
| var<private> u_xlati5 : vec3<i32>; |
| |
| var<private> u_xlati43 : i32; |
| |
| var<private> u_xlati45 : i32; |
| |
| var<private> u_xlatu4 : vec4<u32>; |
| |
| struct _APVResCellIndices_type { |
| value : array<u32, 3u>, |
| } |
| |
| struct _APVResCellIndices { |
| _APVResCellIndices_buf : array<_APVResCellIndices_type>, |
| } |
| |
| @group(0u) @binding(3u) var<storage, read> v_3 : _APVResCellIndices; |
| |
| var<private> u_xlatb43 : bool; |
| |
| var<private> u_xlatu45 : u32; |
| |
| var<private> u_xlat45 : f32; |
| |
| var<private> u_xlatu6 : vec4<u32>; |
| |
| var<private> u_xlatu7 : vec4<u32>; |
| |
| var<private> u_xlatu5 : vec4<u32>; |
| |
| var<private> u_xlat43 : f32; |
| |
| var<private> u_xlati3 : vec3<i32>; |
| |
| var<private> u_xlatb20 : vec3<bool>; |
| |
| var<private> u_xlatb7 : vec3<bool>; |
| |
| var<private> u_xlati7 : vec2<i32>; |
| |
| var<private> u_xlatu42 : u32; |
| |
| struct _APVResIndex_type { |
| value : array<u32, 1u>, |
| } |
| |
| struct _APVResIndex { |
| _APVResIndex_buf : array<_APVResIndex_type>, |
| } |
| |
| @group(0u) @binding(2u) var<storage, read> v_4 : _APVResIndex; |
| |
| var<private> u_xlatu43 : u32; |
| |
| var<private> u_xlat5 : vec4<f32>; |
| |
| var<private> u_xlat6 : vec4<f32>; |
| |
| var<private> u_xlat8 : vec4<f32>; |
| |
| @group(0u) @binding(4u) var _APVResValidity : texture_3d<f32>; |
| |
| var<private> u_xlat46 : f32; |
| |
| var<private> u_xlat9 : vec4<f32>; |
| |
| var<private> u_xlat47 : f32; |
| |
| var<private> u_xlat10 : vec4<f32>; |
| |
| var<private> u_xlat7 : vec4<f32>; |
| |
| var<private> u_xlat11 : vec4<f32>; |
| |
| var<private> u_xlat50 : f32; |
| |
| var<private> u_xlat36 : f32; |
| |
| var<private> u_xlatu10 : vec4<u32>; |
| |
| var<private> u_xlat12 : vec3<f32>; |
| |
| var<private> u_xlat13 : vec3<f32>; |
| |
| var<private> u_xlatb8 : vec4<bool>; |
| |
| var<private> u_xlat18 : vec3<f32>; |
| |
| var<private> u_xlatb45 : bool; |
| |
| var<private> u_xlat32 : f32; |
| |
| var<private> u_xlatb32 : bool; |
| |
| struct UnityPerDraw_1 { |
| unity_ObjectToWorld : mat4x4<f32>, |
| unity_WorldToObject : mat4x4<f32>, |
| unity_LODFade : vec4<f32>, |
| unity_WorldTransformParams : vec4<f32>, |
| unity_RenderingLayer : vec4<f32>, |
| unity_LightData : vec4<f32>, |
| unity_LightIndices : array<vec4<f32>, 2u>, |
| unity_ProbesOcclusion : vec4<f32>, |
| unity_SpecCube0_HDR : vec4<f32>, |
| unity_SpecCube1_HDR : vec4<f32>, |
| unity_SpecCube0_BoxMax : vec4<f32>, |
| unity_SpecCube0_BoxMin : vec4<f32>, |
| unity_SpecCube0_ProbePosition : vec4<f32>, |
| unity_SpecCube1_BoxMax : vec4<f32>, |
| unity_SpecCube1_BoxMin : vec4<f32>, |
| unity_SpecCube1_ProbePosition : vec4<f32>, |
| unity_LightmapST : vec4<f32>, |
| unity_DynamicLightmapST : vec4<f32>, |
| unity_SHAr : vec4<f32>, |
| unity_SHAg : vec4<f32>, |
| unity_SHAb : vec4<f32>, |
| unity_SHBr : vec4<f32>, |
| unity_SHBg : vec4<f32>, |
| unity_SHBb : vec4<f32>, |
| unity_SHC : vec4<f32>, |
| unity_RendererBounds_Min : vec4<f32>, |
| unity_RendererBounds_Max : vec4<f32>, |
| unity_MatrixPreviousM : mat4x4<f32>, |
| unity_MatrixPreviousMI : mat4x4<f32>, |
| unity_MotionVectorsParams : vec4<f32>, |
| unity_SpriteColor : vec4<f32>, |
| unity_SpriteProps : vec4<f32>, |
| } |
| |
| @group(1u) @binding(2u) var<uniform> v_5 : UnityPerDraw_1; |
| |
| var<private> u_xlatb0 : bool; |
| |
| struct gl_PerVertex { |
| gl_Position : vec4<f32>, |
| gl_PointSize : f32, |
| gl_ClipDistance : array<f32, 1u>, |
| } |
| |
| var<private> v_6 : gl_PerVertex; |
| |
| var<private> vs_COLOR0 : vec4<f32>; |
| |
| var<private> phase0_Output0_3 : vec4<f32>; |
| |
| var<private> vs_TEXCOORD1 : vec3<f32>; |
| |
| var<private> vs_TEXCOORD0 : vec2<f32>; |
| |
| var<private> vs_TEXCOORD2 : vec2<f32>; |
| |
| var<private> u_xlat28 : f32; |
| |
| fn main_inner(in_COLOR0 : vec4<f32>, in_POSITION0 : vec4<f32>, in_NORMAL0 : vec3<f32>, in_TEXCOORD0 : vec2<f32>) { |
| var param : u32; |
| var param_1 : i32; |
| var param_2 : i32; |
| var param_3 : u32; |
| var param_4 : i32; |
| var param_5 : i32; |
| var param_6 : u32; |
| var param_7 : i32; |
| var param_8 : i32; |
| var param_9 : u32; |
| var param_10 : i32; |
| var param_11 : i32; |
| var v_7 : vec3<u32>; |
| var v_8 : vec3<u32>; |
| var v_9 : vec2<u32>; |
| var v_10 : vec3<f32>; |
| var v_11 : f32; |
| var v_12 : f32; |
| var v_13 : f32; |
| var v_14 : f32; |
| var u_xlat_precise_vec4 : vec4<f32>; |
| var u_xlat_precise_ivec4 : vec4<i32>; |
| var u_xlat_precise_bvec4 : vec4<bool>; |
| var u_xlat_precise_uvec4 : vec4<u32>; |
| let v_15 = vec3<f32>(bitcast<f32>(v._positionNormalBuffer_buf[0i].value[0i]), bitcast<f32>(v._positionNormalBuffer_buf[0i].value[1i]), bitcast<f32>(v._positionNormalBuffer_buf[0i].value[2i])); |
| u_xlat0 = vec4<f32>(v_15.xyz, u_xlat0.w); |
| let v_16 = vec3<f32>(bitcast<f32>(v._positionNormalBuffer_buf[1i].value[0i]), bitcast<f32>(v._positionNormalBuffer_buf[1i].value[1i]), bitcast<f32>(v._positionNormalBuffer_buf[1i].value[2i])); |
| u_xlat1 = vec4<f32>(v_16.xyz, u_xlat1.w); |
| let v_17 = (-(u_xlat0.xyz) + v_1._WorldSpaceCameraPos); |
| u_xlat2 = vec4<f32>(v_17.xyz, u_xlat2.w); |
| u_xlat42 = dot(u_xlat2.xyz, u_xlat2.xyz); |
| u_xlat42 = inverseSqrt(u_xlat42); |
| let v_18 = u_xlat42; |
| let v_19 = (vec3<f32>(v_18, v_18, v_18) * u_xlat2.xyz); |
| u_xlat2 = vec4<f32>(v_19.xyz, u_xlat2.w); |
| u_xlat3 = ((u_xlat1.xyz * v_2._Biases_CellInMinBrick_MinBrickSize.xxx) + u_xlat0.xyz); |
| let v_20 = ((u_xlat2.xyz * v_2._Biases_CellInMinBrick_MinBrickSize.yyy) + u_xlat3); |
| u_xlat2 = vec4<f32>(v_20.xyz, u_xlat2.w); |
| u_xlat3 = (u_xlat2.xyz / v_2._NormalizationClamp_IndirectionEntryDim_Padding.zzz); |
| u_xlat3 = floor(u_xlat3); |
| u_xlatb4 = ((u_xlat3.xyzx >= v_2._Weight_MinLoadedCellInEntries.yzwy)).xyz; |
| u_xlatb5 = ((v_2._MaxLoadedCellInEntries_FrameIndex.xyzx >= u_xlat3.xyzx)).xyz; |
| u_xlatb4.x = (u_xlatb4.x & u_xlatb5.x); |
| u_xlatb4.y = (u_xlatb4.y & u_xlatb5.y); |
| u_xlatb4.z = (u_xlatb4.z & u_xlatb5.z); |
| u_xlatb42 = (u_xlatb4.y & u_xlatb4.x); |
| u_xlatb42 = (u_xlatb4.z & u_xlatb42); |
| u_xlat4 = (u_xlat3 + -(v_2._MinEntryPos_Noise.xyz)); |
| u_xlati4 = vec3<i32>(u_xlat4); |
| u_xlati5 = vec3<i32>(v_2._IndicesDim_IndexChunkSize.xyw); |
| u_xlati43 = (u_xlati5.y * u_xlati5.x); |
| u_xlati45 = ((u_xlati4.y * u_xlati5.x) + u_xlati4.x); |
| u_xlati43 = ((u_xlati4.z * u_xlati43) + u_xlati45); |
| let v_21 = vec3<u32>(v_3._APVResCellIndices_buf[u_xlati43].value[0i], v_3._APVResCellIndices_buf[u_xlati43].value[1i], v_3._APVResCellIndices_buf[u_xlati43].value[2i]); |
| u_xlatu4 = vec4<u32>(v_21.xyz, u_xlatu4.w); |
| u_xlatb43 = (bitcast<i32>(u_xlatu4.x) != -1i); |
| u_xlatu45 = (u_xlatu4.x >> 29u); |
| u_xlat45 = f32(u_xlatu45); |
| u_xlat45 = (u_xlat45 * 1.58496248722076416016f); |
| u_xlat45 = exp2(u_xlat45); |
| u_xlatu6.w = bitcast<u32>(i32(u_xlat45)); |
| let v_22 = (u_xlatu4.xyz & vec3<u32>(536870911u, 1023u, 1023u)); |
| u_xlatu6 = vec4<u32>(v_22.xyz, u_xlatu6.w); |
| param = u_xlatu4.y; |
| param_1 = 10i; |
| param_2 = 10i; |
| let v_24 = v_23(&(param), &(param_1), &(param_2)); |
| param_3 = u_xlatu4.z; |
| param_4 = 10i; |
| param_5 = 10i; |
| let v_25 = v_23(&(param_3), &(param_4), &(param_5)); |
| param_6 = u_xlatu4.z; |
| param_7 = 20i; |
| param_8 = 10i; |
| let v_26 = v_23(&(param_6), &(param_7), &(param_8)); |
| param_9 = u_xlatu4.y; |
| param_10 = 20i; |
| param_11 = 10i; |
| u_xlatu4 = vec4<u32>(v_24, v_25, v_26, v_23(&(param_9), &(param_10), &(param_11))); |
| u_xlatu7.x = u_xlatu6.y; |
| let v_27 = u_xlatu4.xw; |
| let v_28 = u_xlatu7; |
| u_xlatu7 = vec4<u32>(v_28.x, v_27.xy, v_28.w); |
| if (u_xlatb43) { |
| v_7 = u_xlatu7.xyz; |
| } else { |
| v_7 = vec3<u32>(4294967295u); |
| } |
| let v_29 = v_7; |
| u_xlatu5 = vec4<u32>(v_29.xy, u_xlatu5.z, v_29.z); |
| u_xlatu4.x = u_xlatu6.z; |
| if (u_xlatb43) { |
| v_8 = u_xlatu4.xyz; |
| } else { |
| v_8 = vec3<u32>(4294967295u); |
| } |
| let v_30 = v_8; |
| u_xlatu4 = vec4<u32>(v_30.xyz, u_xlatu4.w); |
| if (u_xlatb43) { |
| v_9 = u_xlatu6.xw; |
| } else { |
| v_9 = vec2<u32>(4294967295u); |
| } |
| let v_31 = v_9; |
| u_xlatu6 = vec4<u32>(v_31.xy, u_xlatu6.zw); |
| u_xlatb42 = (u_xlatb42 & u_xlatb43); |
| u_xlat3 = ((-(u_xlat3) * v_2._NormalizationClamp_IndirectionEntryDim_Padding.zzz) + u_xlat2.xyz); |
| u_xlat43 = f32(bitcast<i32>(u_xlatu6.y)); |
| u_xlat43 = (u_xlat43 * v_2._Biases_CellInMinBrick_MinBrickSize.w); |
| let v_32 = u_xlat3; |
| let v_33 = u_xlat43; |
| u_xlat3 = (v_32 / vec3<f32>(v_33, v_33, v_33)); |
| u_xlat3 = floor(u_xlat3); |
| u_xlati3 = vec3<i32>(u_xlat3); |
| u_xlatb20 = ((u_xlati3.xyzz >= bitcast<vec4<i32>>(u_xlatu5.xyww))).xyz; |
| u_xlatb7 = ((u_xlati3.xyzx < bitcast<vec4<i32>>(u_xlatu4.xyzx))).xyz; |
| u_xlatb20.x = (u_xlatb20.x & u_xlatb7.x); |
| u_xlatb20.y = (u_xlatb20.y & u_xlatb7.y); |
| u_xlatb20.z = (u_xlatb20.z & u_xlatb7.z); |
| u_xlatb43 = (u_xlatb20.y & u_xlatb20.x); |
| u_xlati7.x = bitcast<i32>(((select(0u, 1u, u_xlatb20.z) * 4294967295u) & (select(0u, 1u, u_xlatb43) * 4294967295u))); |
| let v_34 = (-(bitcast<vec2<i32>>(u_xlatu5.xy)) + bitcast<vec2<i32>>(u_xlatu4.xy)); |
| u_xlati4 = vec3<i32>(v_34.xy, u_xlati4.z); |
| u_xlati3 = (-(bitcast<vec3<i32>>(u_xlatu5.xyw)) + u_xlati3); |
| u_xlati43 = (u_xlati4.y * u_xlati4.x); |
| u_xlati3.x = ((u_xlati3.x * u_xlati4.y) + u_xlati3.y); |
| u_xlati43 = ((u_xlati3.z * u_xlati43) + u_xlati3.x); |
| u_xlati7.y = ((bitcast<i32>(u_xlatu6.x) * u_xlati5.z) + u_xlati43); |
| let v_35 = u_xlatb42; |
| let v_36 = bitcast<vec2<i32>>(((select(vec2<u32>(), vec2<u32>(1u), vec2<bool>(v_35, v_35)) * vec2<u32>(4294967295u, 4294967295u)) & bitcast<vec2<u32>>(u_xlati7))); |
| u_xlati3 = vec3<i32>(v_36.xy, u_xlati3.z); |
| u_xlatu42 = v_4._APVResIndex_buf[u_xlati3.y].value[0i]; |
| let v_37 = (u_xlati3.x != 0i); |
| u_xlatu42 = select(4294967295u, u_xlatu42, v_37); |
| u_xlatu43 = (u_xlatu42 >> 28u); |
| u_xlat43 = f32(u_xlatu43); |
| u_xlat43 = (u_xlat43 * 1.58496248722076416016f); |
| u_xlat43 = exp2(u_xlat43); |
| u_xlatu42 = (u_xlatu42 & 268435455u); |
| u_xlat42 = f32(u_xlatu42); |
| u_xlat3.x = (u_xlat42 * v_2._RcpPoolDim_Padding.w); |
| u_xlat3.z = floor(u_xlat3.x); |
| u_xlat45 = (v_2._PoolDim_CellInMeters.y * v_2._PoolDim_CellInMeters.x); |
| u_xlat42 = ((-(u_xlat3.z) * u_xlat45) + u_xlat42); |
| u_xlat45 = (u_xlat42 * v_2._RcpPoolDim_Padding.x); |
| u_xlat3.y = floor(u_xlat45); |
| u_xlat42 = ((-(u_xlat3.y) * v_2._PoolDim_CellInMeters.x) + u_xlat42); |
| u_xlat3.x = floor(u_xlat42); |
| u_xlat4 = (u_xlat2.xyz / v_2._Biases_CellInMinBrick_MinBrickSize.www); |
| let v_38 = u_xlat4; |
| let v_39 = u_xlat43; |
| u_xlat4 = (v_38 / vec3<f32>(v_39, v_39, v_39)); |
| u_xlat4 = fract(u_xlat4); |
| u_xlat3 = (u_xlat3 + vec3<f32>(0.5f)); |
| u_xlat3 = ((u_xlat4 * vec3<f32>(3.0f)) + u_xlat3); |
| u_xlat3 = (u_xlat3 * v_2._RcpPoolDim_Padding.xyz); |
| u_xlat42 = (u_xlat43 * v_2._Biases_CellInMinBrick_MinBrickSize.w); |
| let v_40 = u_xlat42; |
| u_xlat4 = (vec3<f32>(v_40, v_40, v_40) * vec3<f32>(0.3333333432674407959f, 0.3333333432674407959f, 0.0f)); |
| let v_41 = (u_xlat2.xyz / u_xlat4.xxx); |
| u_xlat5 = vec4<f32>(v_41.xyz, u_xlat5.w); |
| let v_42 = fract(u_xlat5.xyz); |
| u_xlat6 = vec4<f32>(v_42.xyz, u_xlat6.w); |
| let v_43 = (u_xlat5.xyz + -(u_xlat6.xyz)); |
| u_xlat5 = vec4<f32>(v_43.xyz, u_xlat5.w); |
| let v_44 = (u_xlat4.xxx * u_xlat5.xyz); |
| u_xlat6 = vec4<f32>(u_xlat6.x, v_44.xyz); |
| u_xlat3 = ((u_xlat3 * v_2._PoolDim_CellInMeters.xyz) + vec3<f32>(-0.5f)); |
| let v_45 = bitcast<vec3<u32>>(vec3<i32>(u_xlat3)); |
| u_xlatu7 = vec4<u32>(v_45.xyz, u_xlatu7.w); |
| u_xlat3 = fract(u_xlat3); |
| let v_46 = (-(u_xlat3) + vec3<f32>(1.0f)); |
| u_xlat8 = vec4<f32>(v_46.xyz, u_xlat8.w); |
| u_xlatu7.w = 0u; |
| u_xlat43 = textureLoad(_APVResValidity, bitcast<vec3<i32>>(u_xlatu7.xyz), bitcast<i32>(u_xlatu7.w)).x; |
| u_xlat43 = (u_xlat43 * 255.0f); |
| u_xlatu43 = u32(u_xlat43); |
| u_xlat45 = (u_xlat8.y * u_xlat8.x); |
| u_xlat46 = (u_xlat8.z * u_xlat45); |
| let v_47 = u_xlatu43; |
| u_xlatu7 = (vec4<u32>(v_47, v_47, v_47, v_47) & vec4<u32>(1u, 2u, 4u, 8u)); |
| u_xlat6.x = f32(bitcast<i32>(u_xlatu7.x)); |
| let v_48 = ((u_xlat5.xyz * u_xlat4.xxx) + -(u_xlat0.xyz)); |
| u_xlat9 = vec4<f32>(v_48.xyz, u_xlat9.w); |
| u_xlat47 = dot(u_xlat9.xyz, u_xlat9.xyz); |
| u_xlat47 = inverseSqrt(u_xlat47); |
| let v_49 = u_xlat47; |
| let v_50 = (vec3<f32>(v_49, v_49, v_49) * u_xlat9.xyz); |
| u_xlat10 = vec4<f32>(v_50.xyz, u_xlat10.w); |
| u_xlat47 = dot(u_xlat10.xyz, u_xlat1.xyz); |
| u_xlat47 = (u_xlat47 + -(v_2._LeakReductionParams.z)); |
| u_xlat47 = clamp(u_xlat47, 0.0f, 1.0f); |
| u_xlat47 = (u_xlat6.x * u_xlat47); |
| let v_51 = (u_xlat3.xy * u_xlat8.yx); |
| u_xlat8 = vec4<f32>(v_51.xy, u_xlat8.zw); |
| let v_52 = (u_xlat8.zz * u_xlat8.xy); |
| u_xlat10 = vec4<f32>(v_52.xy, u_xlat10.zw); |
| let v_53 = min(u_xlatu7.yzw, vec3<u32>(1u)); |
| u_xlatu7 = vec4<u32>(v_53.xyz, u_xlatu7.w); |
| let v_54 = vec3<f32>(bitcast<vec3<i32>>(u_xlatu7.xyz)); |
| u_xlat7 = vec4<f32>(v_54.xyz, u_xlat7.w); |
| let v_55 = u_xlat42; |
| let v_56 = ((vec3<f32>(v_55, v_55, v_55) * vec3<f32>(0.3333333432674407959f, 0.0f, 0.0f)) + u_xlat9.xyz); |
| u_xlat11 = vec4<f32>(v_56.xyz, u_xlat11.w); |
| u_xlat50 = dot(u_xlat11.xyz, u_xlat11.xyz); |
| u_xlat50 = inverseSqrt(u_xlat50); |
| let v_57 = u_xlat50; |
| let v_58 = (vec3<f32>(v_57, v_57, v_57) * u_xlat11.xyz); |
| u_xlat11 = vec4<f32>(v_58.xyz, u_xlat11.w); |
| u_xlat50 = dot(u_xlat11.xyz, u_xlat1.xyz); |
| u_xlat50 = (u_xlat50 + -(v_2._LeakReductionParams.z)); |
| u_xlat50 = clamp(u_xlat50, 0.0f, 1.0f); |
| u_xlat50 = (u_xlat7.x * u_xlat50); |
| u_xlat11.x = (u_xlat50 * u_xlat10.x); |
| u_xlat46 = ((u_xlat46 * u_xlat47) + u_xlat11.x); |
| let v_59 = u_xlat42; |
| let v_60 = ((vec3<f32>(v_59, v_59, v_59) * vec3<f32>(0.0f, 0.3333333432674407959f, 0.0f)) + u_xlat9.xyz); |
| u_xlat10 = vec4<f32>(v_60.x, u_xlat10.y, v_60.yz); |
| u_xlat47 = dot(u_xlat10.xzw, u_xlat10.xzw); |
| u_xlat47 = inverseSqrt(u_xlat47); |
| let v_61 = u_xlat47; |
| let v_62 = (vec3<f32>(v_61, v_61, v_61) * u_xlat10.xzw); |
| u_xlat10 = vec4<f32>(v_62.x, u_xlat10.y, v_62.yz); |
| u_xlat47 = dot(u_xlat10.xzw, u_xlat1.xyz); |
| u_xlat47 = (u_xlat47 + -(v_2._LeakReductionParams.z)); |
| u_xlat47 = clamp(u_xlat47, 0.0f, 1.0f); |
| u_xlat47 = (u_xlat7.y * u_xlat47); |
| u_xlat11.y = (u_xlat47 * u_xlat10.y); |
| u_xlat46 = ((u_xlat10.y * u_xlat47) + u_xlat46); |
| u_xlat47 = (u_xlat3.y * u_xlat3.x); |
| u_xlat36 = (u_xlat8.z * u_xlat47); |
| let v_63 = u_xlat42; |
| let v_64 = ((vec3<f32>(v_63, v_63, v_63) * vec3<f32>(0.3333333432674407959f, 0.3333333432674407959f, 0.0f)) + u_xlat9.xyz); |
| u_xlat10 = vec4<f32>(v_64.xyz, u_xlat10.w); |
| u_xlat50 = dot(u_xlat10.xyz, u_xlat10.xyz); |
| u_xlat50 = inverseSqrt(u_xlat50); |
| let v_65 = u_xlat50; |
| let v_66 = (vec3<f32>(v_65, v_65, v_65) * u_xlat10.xyz); |
| u_xlat10 = vec4<f32>(v_66.xyz, u_xlat10.w); |
| u_xlat50 = dot(u_xlat10.xyz, u_xlat1.xyz); |
| u_xlat50 = (u_xlat50 + -(v_2._LeakReductionParams.z)); |
| u_xlat50 = clamp(u_xlat50, 0.0f, 1.0f); |
| u_xlat50 = (u_xlat7.z * u_xlat50); |
| u_xlat11.z = (u_xlat50 * u_xlat36); |
| u_xlat46 = ((u_xlat36 * u_xlat50) + u_xlat46); |
| u_xlat45 = (u_xlat3.z * u_xlat45); |
| let v_67 = u_xlatu43; |
| u_xlatu10 = (vec4<u32>(v_67, v_67, v_67, v_67) & vec4<u32>(16u, 32u, 64u, 128u)); |
| u_xlatu10 = min(u_xlatu10, vec4<u32>(1u)); |
| u_xlat10 = vec4<f32>(bitcast<vec4<i32>>(u_xlatu10.yxzw)); |
| let v_68 = u_xlat42; |
| u_xlat12 = ((vec3<f32>(v_68, v_68, v_68) * vec3<f32>(0.0f, 0.0f, 0.3333333432674407959f)) + u_xlat9.xyz); |
| u_xlat43 = dot(u_xlat12, u_xlat12); |
| u_xlat43 = inverseSqrt(u_xlat43); |
| let v_69 = u_xlat43; |
| u_xlat12 = (vec3<f32>(v_69, v_69, v_69) * u_xlat12); |
| u_xlat43 = dot(u_xlat12, u_xlat1.xyz); |
| u_xlat43 = (u_xlat43 + -(v_2._LeakReductionParams.z)); |
| u_xlat43 = clamp(u_xlat43, 0.0f, 1.0f); |
| u_xlat43 = (u_xlat10.y * u_xlat43); |
| u_xlat12.x = (u_xlat43 * u_xlat45); |
| u_xlat43 = ((u_xlat45 * u_xlat43) + u_xlat46); |
| let v_70 = (u_xlat3.zz * u_xlat8.xy); |
| u_xlat8 = vec4<f32>(v_70.xy, u_xlat8.zw); |
| let v_71 = u_xlat42; |
| u_xlat13 = ((vec3<f32>(v_71, v_71, v_71) * vec3<f32>(0.3333333432674407959f, 0.0f, 0.3333333432674407959f)) + u_xlat9.xyz); |
| u_xlat45 = dot(u_xlat13, u_xlat13); |
| u_xlat45 = inverseSqrt(u_xlat45); |
| let v_72 = u_xlat45; |
| u_xlat13 = (vec3<f32>(v_72, v_72, v_72) * u_xlat13); |
| u_xlat45 = dot(u_xlat13, u_xlat1.xyz); |
| u_xlat45 = (u_xlat45 + -(v_2._LeakReductionParams.z)); |
| u_xlat45 = clamp(u_xlat45, 0.0f, 1.0f); |
| u_xlat45 = (u_xlat10.x * u_xlat45); |
| u_xlat12.y = (u_xlat45 * u_xlat8.x); |
| u_xlat43 = ((u_xlat8.x * u_xlat45) + u_xlat43); |
| let v_73 = u_xlat42; |
| let v_74 = ((vec3<f32>(v_73, v_73, v_73) * vec3<f32>(0.0f, 0.3333333432674407959f, 0.3333333432674407959f)) + u_xlat9.xyz); |
| u_xlat8 = vec4<f32>(v_74.x, u_xlat8.y, v_74.yz); |
| u_xlat45 = dot(u_xlat8.xzw, u_xlat8.xzw); |
| u_xlat45 = inverseSqrt(u_xlat45); |
| let v_75 = u_xlat45; |
| let v_76 = (vec3<f32>(v_75, v_75, v_75) * u_xlat8.xzw); |
| u_xlat8 = vec4<f32>(v_76.x, u_xlat8.y, v_76.yz); |
| u_xlat45 = dot(u_xlat8.xzw, u_xlat1.xyz); |
| u_xlat45 = (u_xlat45 + -(v_2._LeakReductionParams.z)); |
| u_xlat45 = clamp(u_xlat45, 0.0f, 1.0f); |
| u_xlat45 = (u_xlat10.z * u_xlat45); |
| u_xlat12.z = (u_xlat45 * u_xlat8.y); |
| u_xlat43 = ((u_xlat8.y * u_xlat45) + u_xlat43); |
| u_xlat45 = (u_xlat3.z * u_xlat47); |
| let v_77 = u_xlat42; |
| let v_78 = ((vec3<f32>(v_77, v_77, v_77) * vec3<f32>(0.3333333432674407959f)) + u_xlat9.xyz); |
| u_xlat8 = vec4<f32>(v_78.xyz, u_xlat8.w); |
| u_xlat46 = dot(u_xlat8.xyz, u_xlat8.xyz); |
| u_xlat46 = inverseSqrt(u_xlat46); |
| let v_79 = u_xlat46; |
| let v_80 = (vec3<f32>(v_79, v_79, v_79) * u_xlat8.xyz); |
| u_xlat8 = vec4<f32>(v_80.xyz, u_xlat8.w); |
| u_xlat46 = dot(u_xlat8.xyz, u_xlat1.xyz); |
| u_xlat46 = (u_xlat46 + -(v_2._LeakReductionParams.z)); |
| u_xlat46 = clamp(u_xlat46, 0.0f, 1.0f); |
| u_xlat46 = (u_xlat10.w * u_xlat46); |
| u_xlat5.w = (u_xlat45 * u_xlat46); |
| u_xlat43 = ((u_xlat45 * u_xlat46) + u_xlat43); |
| u_xlat43 = max(u_xlat43, 0.00009999999747378752f); |
| u_xlat43 = (1.0f / u_xlat43); |
| let v_81 = u_xlat43; |
| let v_82 = (vec3<f32>(v_81, v_81, v_81) * u_xlat11.xyz); |
| u_xlat8 = vec4<f32>(v_82.xyz, u_xlat8.w); |
| let v_83 = u_xlat43; |
| let v_84 = (vec3<f32>(v_83, v_83, v_83) * u_xlat12); |
| u_xlat9 = vec4<f32>(v_84.xyz, u_xlat9.w); |
| let v_85 = ((u_xlat8.xxx * vec3<f32>(1.0f, 0.0f, 0.0f)) + -(u_xlat3)); |
| u_xlat11 = vec4<f32>(v_85.xyz, u_xlat11.w); |
| let v_86 = ((u_xlat8.yyy * vec3<f32>(0.0f, 1.0f, 0.0f)) + u_xlat11.xyz); |
| u_xlat8 = vec4<f32>(v_86.xy, u_xlat8.z, v_86.z); |
| let v_87 = ((u_xlat8.zzz * vec3<f32>(1.0f, 1.0f, 0.0f)) + u_xlat8.xyw); |
| u_xlat8 = vec4<f32>(v_87.xyz, u_xlat8.w); |
| let v_88 = ((u_xlat9.xxx * vec3<f32>(0.0f, 0.0f, 1.0f)) + u_xlat8.xyz); |
| u_xlat8 = vec4<f32>(v_88.xyz, u_xlat8.w); |
| let v_89 = ((u_xlat9.yyy * vec3<f32>(1.0f, 0.0f, 1.0f)) + u_xlat8.xyz); |
| u_xlat8 = vec4<f32>(v_89.xyz, u_xlat8.w); |
| let v_90 = ((u_xlat9.zzz * vec3<f32>(0.0f, 1.0f, 1.0f)) + u_xlat8.xyz); |
| u_xlat8 = vec4<f32>(v_90.xyz, u_xlat8.w); |
| let v_91 = u_xlat5.www; |
| let v_92 = u_xlat43; |
| let v_93 = ((v_91 * vec3<f32>(v_92, v_92, v_92)) + u_xlat8.xyz); |
| u_xlat8 = vec4<f32>(v_93.xyz, u_xlat8.w); |
| u_xlat3 = (u_xlat3 + u_xlat8.xyz); |
| u_xlatb43 = !((v_2._LeakReductionParams.x == 0.0f)); |
| let v_94 = ((-(u_xlat5.xyz) * u_xlat4.xxx) + u_xlat2.xyz); |
| u_xlat8 = vec4<f32>(v_94.xyz, u_xlat8.w); |
| let v_95 = (u_xlat8.xyz / u_xlat4.xxx); |
| u_xlat8 = vec4<f32>(v_95.xyz, u_xlat8.w); |
| if (u_xlatb43) { |
| v_10 = u_xlat3; |
| } else { |
| v_10 = u_xlat8.xyz; |
| } |
| u_xlat3 = v_10; |
| let v_96 = in_COLOR0.z; |
| u_xlatb43 = any(!((vec4<f32>() == vec4<f32>(v_96, v_96, v_96, v_96)))); |
| if (u_xlatb43) { |
| u_xlat8 = (in_COLOR0.zzzz + vec4<f32>(-0.20000000298023223877f, -0.30000001192092895508f, -0.40000000596046447754f, -0.5f)); |
| u_xlatb8 = (abs(u_xlat8) < vec4<f32>(0.01999999955296516418f)); |
| let v_97 = ((u_xlat5.xyz * u_xlat4.xxx) + u_xlat4.zyz); |
| u_xlat9 = vec4<f32>(u_xlat9.x, v_97.xyz); |
| u_xlat9.x = u_xlat7.y; |
| let v_98 = u_xlatb8.x; |
| let v_99 = u_xlat9; |
| u_xlat9 = select(u_xlat6, v_99, vec4<bool>(v_98, v_98, v_98, v_98)); |
| let v_100 = ((u_xlat5.xyz * u_xlat4.xxx) + u_xlat4.yyz); |
| u_xlat11 = vec4<f32>(u_xlat11.x, v_100.xyz); |
| u_xlat11.x = u_xlat7.z; |
| let v_101 = u_xlatb8.y; |
| let v_102 = u_xlat11; |
| u_xlat9 = select(u_xlat9, v_102, vec4<bool>(v_101, v_101, v_101, v_101)); |
| let v_103 = ((u_xlat5.xyz * u_xlat4.xxx) + u_xlat4.yzz); |
| u_xlat7 = vec4<f32>(u_xlat7.x, v_103.xyz); |
| let v_104 = u_xlatb8.z; |
| let v_105 = u_xlat7; |
| u_xlat7 = select(u_xlat9, v_105, vec4<bool>(v_104, v_104, v_104, v_104)); |
| let v_106 = ((u_xlat5.xyz * u_xlat4.xxx) + u_xlat4.zzy); |
| u_xlat9 = vec4<f32>(u_xlat9.x, v_106.xyz); |
| u_xlat9.x = u_xlat10.y; |
| let v_107 = u_xlatb8.w; |
| let v_108 = u_xlat9; |
| u_xlat7 = select(u_xlat7, v_108, vec4<bool>(v_107, v_107, v_107, v_107)); |
| u_xlat8 = vec4<f32>(((in_COLOR0.zzz + vec3<f32>(-0.60000002384185791016f, -0.69999998807907104492f, -0.80000001192092895508f))).xyz, u_xlat8.w); |
| let v_109 = ((abs(u_xlat8.xyzx) < vec4<f32>(0.01999999955296516418f, 0.01999999955296516418f, 0.01999999955296516418f, 0.0f))).xyz; |
| u_xlatb8 = vec4<bool>(v_109.xyz, u_xlatb8.w); |
| let v_110 = ((u_xlat5.xyz * u_xlat4.xxx) + u_xlat4.zyy); |
| u_xlat9 = vec4<f32>(u_xlat9.x, v_110.xyz); |
| u_xlat9.x = u_xlat10.z; |
| let v_111 = u_xlatb8.x; |
| let v_112 = u_xlat9; |
| u_xlat7 = select(u_xlat7, v_112, vec4<bool>(v_111, v_111, v_111, v_111)); |
| let v_113 = ((u_xlat5.xyz * u_xlat4.xxx) + u_xlat4.xxx); |
| u_xlat9 = vec4<f32>(u_xlat9.x, v_113.xyz); |
| u_xlat9.x = u_xlat10.w; |
| let v_114 = u_xlatb8.y; |
| let v_115 = u_xlat9; |
| u_xlat7 = select(u_xlat7, v_115, vec4<bool>(v_114, v_114, v_114, v_114)); |
| let v_116 = ((u_xlat5.xyz * u_xlat4.xxx) + u_xlat4.yzy); |
| u_xlat10 = vec4<f32>(u_xlat10.x, v_116.xyz); |
| let v_117 = u_xlatb8.z; |
| let v_118 = u_xlat10; |
| u_xlat7 = select(u_xlat7, v_118, vec4<bool>(v_117, v_117, v_117, v_117)); |
| u_xlat18 = ((u_xlat5.xyz * u_xlat4.xxx) + -(u_xlat7.yzw)); |
| u_xlat43 = dot(u_xlat18, u_xlat18); |
| u_xlat43 = sqrt(u_xlat43); |
| u_xlatb43 = (u_xlat43 < 0.00009999999747378752f); |
| if (u_xlatb43) { |
| u_xlat18 = (-(u_xlat3) + vec3<f32>(1.0f)); |
| u_xlat43 = (u_xlat18.y * u_xlat18.x); |
| u_xlat8.x = (u_xlat18.z * u_xlat43); |
| } else { |
| let v_119 = u_xlat42; |
| u_xlat18 = ((vec3<f32>(v_119, v_119, v_119) * vec3<f32>(-0.3333333432674407959f, 0.0f, 0.0f)) + u_xlat7.yzw); |
| u_xlat18 = ((u_xlat5.xyz * u_xlat4.xxx) + -(u_xlat18)); |
| u_xlat43 = dot(u_xlat18, u_xlat18); |
| u_xlat43 = sqrt(u_xlat43); |
| u_xlatb43 = (u_xlat43 < 0.00009999999747378752f); |
| if (u_xlatb43) { |
| let v_120 = (-(u_xlat3.yz) + vec2<f32>(1.0f)); |
| u_xlat18 = vec3<f32>(v_120.xy, u_xlat18.z); |
| u_xlat43 = (u_xlat3.x * u_xlat18.x); |
| u_xlat8.x = (u_xlat18.y * u_xlat43); |
| } else { |
| let v_121 = u_xlat42; |
| u_xlat18 = ((vec3<f32>(v_121, v_121, v_121) * vec3<f32>(-0.3333333432674407959f, -0.3333333432674407959f, 0.0f)) + u_xlat7.yzw); |
| u_xlat18 = ((u_xlat5.xyz * u_xlat4.xxx) + -(u_xlat18)); |
| u_xlat43 = dot(u_xlat18, u_xlat18); |
| u_xlat43 = sqrt(u_xlat43); |
| u_xlatb43 = (u_xlat43 < 0.00009999999747378752f); |
| if (u_xlatb43) { |
| u_xlat43 = (u_xlat3.y * u_xlat3.x); |
| u_xlat45 = (-(u_xlat3.z) + 1.0f); |
| u_xlat8.x = (u_xlat43 * u_xlat45); |
| } else { |
| let v_122 = u_xlat42; |
| u_xlat18 = ((vec3<f32>(v_122, v_122, v_122) * vec3<f32>(0.0f, -0.3333333432674407959f, 0.0f)) + u_xlat7.yzw); |
| u_xlat18 = ((u_xlat5.xyz * u_xlat4.xxx) + -(u_xlat18)); |
| u_xlat43 = dot(u_xlat18, u_xlat18); |
| u_xlat43 = sqrt(u_xlat43); |
| u_xlatb43 = (u_xlat43 < 0.00009999999747378752f); |
| if (u_xlatb43) { |
| let v_123 = (-(u_xlat3.xz) + vec2<f32>(1.0f)); |
| u_xlat18 = vec3<f32>(v_123.xy, u_xlat18.z); |
| u_xlat43 = (u_xlat3.y * u_xlat18.x); |
| u_xlat8.x = (u_xlat18.y * u_xlat43); |
| } else { |
| let v_124 = u_xlat42; |
| u_xlat18 = ((vec3<f32>(v_124, v_124, v_124) * vec3<f32>(-0.3333333432674407959f, 0.0f, -0.3333333432674407959f)) + u_xlat7.yzw); |
| u_xlat18 = ((u_xlat5.xyz * u_xlat4.xxx) + -(u_xlat18)); |
| u_xlat43 = dot(u_xlat18, u_xlat18); |
| u_xlat43 = sqrt(u_xlat43); |
| u_xlatb43 = (u_xlat43 < 0.00009999999747378752f); |
| let v_125 = (-(u_xlat3.yx) + vec2<f32>(1.0f)); |
| u_xlat18 = vec3<f32>(v_125.xy, u_xlat18.z); |
| let v_126 = (u_xlat3.xy * u_xlat18.xy); |
| u_xlat9 = vec4<f32>(v_126.xy, u_xlat9.zw); |
| let v_127 = u_xlat42; |
| let v_128 = ((vec3<f32>(v_127, v_127, v_127) * vec3<f32>(0.0f, 0.0f, -0.3333333432674407959f)) + u_xlat7.yzw); |
| u_xlat10 = vec4<f32>(v_128.xyz, u_xlat10.w); |
| let v_129 = ((u_xlat5.xyz * u_xlat4.xxx) + -(u_xlat10.xyz)); |
| u_xlat10 = vec4<f32>(v_129.xyz, u_xlat10.w); |
| u_xlat45 = dot(u_xlat10.xyz, u_xlat10.xyz); |
| u_xlat45 = sqrt(u_xlat45); |
| u_xlatb45 = (u_xlat45 < 0.00009999999747378752f); |
| u_xlat18.x = (u_xlat18.x * u_xlat18.y); |
| let v_130 = u_xlat42; |
| let v_131 = ((vec3<f32>(v_130, v_130, v_130) * vec3<f32>(-0.3333333432674407959f)) + u_xlat7.yzw); |
| u_xlat10 = vec4<f32>(v_131.xyz, u_xlat10.w); |
| let v_132 = ((u_xlat5.xyz * u_xlat4.xxx) + -(u_xlat10.xyz)); |
| u_xlat10 = vec4<f32>(v_132.xyz, u_xlat10.w); |
| u_xlat32 = dot(u_xlat10.xyz, u_xlat10.xyz); |
| u_xlat32 = sqrt(u_xlat32); |
| u_xlatb32 = (u_xlat32 < 0.00009999999747378752f); |
| u_xlat18.z = (u_xlat3.y * u_xlat3.x); |
| let v_133 = (u_xlat3.zz * u_xlat18.xz); |
| u_xlat18 = vec3<f32>(v_133.x, u_xlat18.y, v_133.y); |
| let v_134 = u_xlat42; |
| let v_135 = ((vec3<f32>(v_134, v_134, v_134) * vec3<f32>(0.0f, -0.3333333432674407959f, -0.3333333432674407959f)) + u_xlat7.yzw); |
| u_xlat10 = vec4<f32>(v_135.xyz, u_xlat10.w); |
| let v_136 = ((u_xlat5.xyz * u_xlat4.xxx) + -(u_xlat10.xyz)); |
| u_xlat5 = vec4<f32>(v_136.xyz, u_xlat5.w); |
| u_xlat42 = dot(u_xlat5.xyz, u_xlat5.xyz); |
| u_xlat42 = sqrt(u_xlat42); |
| u_xlatb42 = (u_xlat42 < 0.00009999999747378752f); |
| let v_137 = (u_xlat3.zz * u_xlat9.xy); |
| u_xlat5 = vec4<f32>(v_137.xy, u_xlat5.zw); |
| if (u_xlatb42) { |
| v_11 = u_xlat5.y; |
| } else { |
| v_11 = 0.0f; |
| } |
| u_xlat42 = v_11; |
| if (u_xlatb32) { |
| v_12 = u_xlat18.z; |
| } else { |
| v_12 = u_xlat42; |
| } |
| u_xlat42 = v_12; |
| if (u_xlatb45) { |
| v_13 = u_xlat18.x; |
| } else { |
| v_13 = u_xlat42; |
| } |
| u_xlat42 = v_13; |
| if (u_xlatb43) { |
| v_14 = u_xlat5.x; |
| } else { |
| v_14 = u_xlat42; |
| } |
| u_xlat8.x = v_14; |
| } |
| } |
| } |
| } |
| let v_138 = v_1.unity_MatrixInvV[1i].xyz; |
| let v_139 = vec3<f32>(v_1._ProbeSize, v_1._ProbeSize, v_1._ProbeSize); |
| u_xlat18 = (v_138 * vec3<f32>(v_139.x, v_139.y, v_139.z)); |
| u_xlat18 = ((u_xlat18 * vec3<f32>(0.6666666865348815918f)) + u_xlat7.yzw); |
| let v_140 = (u_xlat18 + v_5.unity_ObjectToWorld[3i].xyz); |
| u_xlat5 = vec4<f32>(v_140.xyz, u_xlat5.w); |
| u_xlat18 = (in_POSITION0.yyy * v_1.unity_MatrixInvV[1i].xyz); |
| u_xlat18 = (u_xlat18 * vec3<f32>(0.5f)); |
| u_xlat18 = ((in_POSITION0.xxx * -(v_1.unity_MatrixInvV[0i].xyz)) + u_xlat18); |
| let v_141 = u_xlat18; |
| let v_142 = vec3<f32>(v_1._ProbeSize, v_1._ProbeSize, v_1._ProbeSize); |
| u_xlat18 = (v_141 * vec3<f32>(v_142.x, v_142.y, v_142.z)); |
| let v_143 = (u_xlat18 * vec3<f32>(20.0f)); |
| u_xlat9 = vec4<f32>(v_143.xyz, u_xlat9.w); |
| u_xlat5.w = v_5.unity_ObjectToWorld[3i].w; |
| u_xlat9.w = 0.0f; |
| u_xlat5 = (u_xlat5 + u_xlat9); |
| u_xlat8.y = u_xlat7.x; |
| } else { |
| let v_144 = in_COLOR0.y; |
| u_xlatb42 = any(!((vec4<f32>() == vec4<f32>(v_144, v_144, v_144, v_144)))); |
| if (u_xlatb42) { |
| u_xlat42 = dot(u_xlat1.xyz, u_xlat1.xyz); |
| u_xlat42 = inverseSqrt(u_xlat42); |
| let v_145 = u_xlat42; |
| let v_146 = (vec3<f32>(v_145, v_145, v_145) * u_xlat1.xyz); |
| u_xlat1 = vec4<f32>(v_146.xyz, u_xlat1.w); |
| u_xlatb42 = (0.89999997615814208984f < u_xlat1.y); |
| let v_147 = u_xlatb42; |
| u_xlat18 = select(vec3<f32>(1.0f, 0.0f, 0.0f), vec3<f32>(0.0f, 0.0f, 1.0f), vec3<bool>(v_147, v_147, v_147)); |
| let v_148 = (u_xlat1.zxy * u_xlat18); |
| u_xlat7 = vec4<f32>(v_148.xyz, u_xlat7.w); |
| u_xlat18 = ((u_xlat1.yzx * u_xlat18.yzx) + -(u_xlat7.xyz)); |
| u_xlat42 = dot(u_xlat18, u_xlat18); |
| u_xlat42 = inverseSqrt(u_xlat42); |
| let v_149 = u_xlat42; |
| u_xlat18 = (vec3<f32>(v_149, v_149, v_149) * u_xlat18); |
| let v_150 = (u_xlat1.yzx * u_xlat18.zxy); |
| u_xlat7 = vec4<f32>(v_150.xyz, u_xlat7.w); |
| let v_151 = ((u_xlat18.yzx * u_xlat1.zxy) + -(u_xlat7.xyz)); |
| u_xlat7 = vec4<f32>(v_151.xyz, u_xlat7.w); |
| let v_152 = vec3<f32>(v_1._ProbeSize, v_1._ProbeSize, v_1._ProbeSize); |
| u_xlat9 = vec4<f32>(((in_POSITION0.xyz * vec3<f32>(v_152.x, v_152.y, v_152.z))).xyz, u_xlat9.w); |
| let v_153 = (u_xlat9.xyz * vec3<f32>(5.0f)); |
| u_xlat9 = vec4<f32>(v_153.xyz, u_xlat9.w); |
| let v_154 = (u_xlat7.xyz * u_xlat9.yyy); |
| u_xlat7 = vec4<f32>(v_154.xyz, u_xlat7.w); |
| u_xlat18 = ((u_xlat18 * u_xlat9.xxx) + u_xlat7.xyz); |
| let v_155 = ((u_xlat1.xyz * u_xlat9.zzz) + u_xlat18); |
| u_xlat1 = vec4<f32>(v_155.xyz, u_xlat1.w); |
| u_xlat7 = (u_xlat1.yyyy * v_5.unity_ObjectToWorld[1i]); |
| u_xlat7 = ((v_5.unity_ObjectToWorld[0i] * u_xlat1.xxxx) + u_xlat7); |
| u_xlat1 = ((v_5.unity_ObjectToWorld[2i] * u_xlat1.zzzz) + u_xlat7); |
| u_xlat5 = (u_xlat1 + v_5.unity_ObjectToWorld[3i]); |
| let v_156 = (u_xlat0.xyz + u_xlat5.xyz); |
| u_xlat5 = vec4<f32>(v_156.xyz, u_xlat5.w); |
| } else { |
| let v_157 = in_COLOR0.x; |
| u_xlatb0 = any(!((vec4<f32>() == vec4<f32>(v_157, v_157, v_157, v_157)))); |
| if (u_xlatb0) { |
| if ((v_1._ForceDebugNormalViewBias != 0i)) { |
| let v_158 = vec3<f32>(v_1._ProbeSize, v_1._ProbeSize, v_1._ProbeSize); |
| u_xlat0 = vec4<f32>(((in_POSITION0.xyz * vec3<f32>(v_158.x, v_158.y, v_158.z))).xyz, u_xlat0.w); |
| let v_159 = (u_xlat0.xyz * vec3<f32>(1.5f)); |
| u_xlat0 = vec4<f32>(v_159.xyz, u_xlat0.w); |
| u_xlat1 = (u_xlat0.yyyy * v_5.unity_ObjectToWorld[1i]); |
| u_xlat1 = ((v_5.unity_ObjectToWorld[0i] * u_xlat0.xxxx) + u_xlat1); |
| u_xlat0 = ((v_5.unity_ObjectToWorld[2i] * u_xlat0.zzzz) + u_xlat1); |
| u_xlat0 = (u_xlat0 + v_5.unity_ObjectToWorld[3i]); |
| u_xlat2.w = 0.0f; |
| u_xlat5 = (u_xlat0 + u_xlat2); |
| } else { |
| v_6.gl_Position = vec4<f32>(); |
| vs_COLOR0 = vec4<f32>(); |
| phase0_Output0_3 = vec4<f32>(0.0f, 0.0f, 0.0f, 1.0f); |
| vs_TEXCOORD1 = vec3<f32>(); |
| vs_TEXCOORD0 = phase0_Output0_3.xy; |
| vs_TEXCOORD2 = phase0_Output0_3.zw; |
| return; |
| } |
| } else { |
| let v_160 = vec3<f32>(v_1._ProbeSize, v_1._ProbeSize, v_1._ProbeSize); |
| u_xlat0 = vec4<f32>(((in_POSITION0.xyz * vec3<f32>(v_160.x, v_160.y, v_160.z))).xyz, u_xlat0.w); |
| let v_161 = (u_xlat0.xyz * vec3<f32>(3.0f)); |
| u_xlat0 = vec4<f32>(v_161.xyz, u_xlat0.w); |
| u_xlat1 = (u_xlat0.yyyy * v_5.unity_ObjectToWorld[1i]); |
| u_xlat1 = ((v_5.unity_ObjectToWorld[0i] * u_xlat0.xxxx) + u_xlat1); |
| u_xlat0 = ((v_5.unity_ObjectToWorld[2i] * u_xlat0.zzzz) + u_xlat1); |
| u_xlat0 = (u_xlat0 + v_5.unity_ObjectToWorld[3i]); |
| let v_162 = ((u_xlat3 * u_xlat4.xxx) + u_xlat6.yzw); |
| u_xlat1 = vec4<f32>(v_162.xyz, u_xlat1.w); |
| u_xlat1.w = 0.0f; |
| u_xlat5 = (u_xlat0 + u_xlat1); |
| } |
| } |
| u_xlat8.x = 0.0f; |
| u_xlat8.y = 1.0f; |
| } |
| u_xlat0 = (u_xlat5.yyyy * v_1.unity_MatrixVP[1i]); |
| u_xlat0 = ((v_1.unity_MatrixVP[0i] * u_xlat5.xxxx) + u_xlat0); |
| u_xlat0 = ((v_1.unity_MatrixVP[2i] * u_xlat5.zzzz) + u_xlat0); |
| u_xlat0 = ((v_1.unity_MatrixVP[3i] * u_xlat5.wwww) + u_xlat0); |
| u_xlat28 = (u_xlat0.z + 1.0f); |
| u_xlat28 = ((u_xlat28 * 0.19999998807907104492f) + 0.60000002384185791016f); |
| v_6.gl_Position.z = (u_xlat0.w * u_xlat28); |
| u_xlat1.x = dot(in_NORMAL0, v_5.unity_ObjectToWorld[0i].xyz); |
| u_xlat1.y = dot(in_NORMAL0, v_5.unity_ObjectToWorld[1i].xyz); |
| u_xlat1.z = dot(in_NORMAL0, v_5.unity_ObjectToWorld[2i].xyz); |
| u_xlat28 = dot(u_xlat1.xyz, u_xlat1.xyz); |
| u_xlat28 = inverseSqrt(u_xlat28); |
| let v_163 = u_xlat28; |
| vs_TEXCOORD1 = (vec3<f32>(v_163, v_163, v_163) * u_xlat1.xyz); |
| let v_164 = u_xlat0.xyw; |
| let v_165 = &(v_6.gl_Position); |
| *(v_165) = vec4<f32>(v_164.xy, (*(v_165)).z, v_164.z); |
| vs_COLOR0 = in_COLOR0; |
| u_xlat8 = vec4<f32>(u_xlat8.xy, in_TEXCOORD0.xy); |
| phase0_Output0_3 = u_xlat8.zwxy; |
| vs_TEXCOORD0 = phase0_Output0_3.xy; |
| vs_TEXCOORD2 = phase0_Output0_3.zw; |
| } |
| |
| fn v_23(value : ptr<function, u32>, offset : ptr<function, i32>, bits : ptr<function, i32>) -> u32 { |
| return ((*(value) >> bitcast<u32>(*(offset))) & ~((4294967295u << bitcast<u32>(*(bits))))); |
| } |
| |
| struct tint_symbol { |
| @builtin(position) |
| gl_Position : vec4<f32>, |
| @location(0u) |
| vs_COLOR0 : vec4<f32>, |
| @location(1u) |
| vs_TEXCOORD0 : vec2<f32>, |
| @location(2u) |
| vs_TEXCOORD2 : vec2<f32>, |
| } |
| |
| @vertex |
| fn main(@location(2u) in_COLOR0 : vec4<f32>, @location(0u) in_POSITION0 : vec4<f32>, @location(1u) in_NORMAL0 : vec3<f32>, @location(3u) in_TEXCOORD0 : vec2<f32>) -> tint_symbol { |
| main_inner(in_COLOR0, in_POSITION0, in_NORMAL0, in_TEXCOORD0); |
| return tint_symbol(v_6.gl_Position, vs_COLOR0, vs_TEXCOORD0, vs_TEXCOORD2); |
| } |