0u  _BLOOM_LQ_CHROMATIC_ABERRATION _DITHERING _FILM_GRAIN_LINEAR_TO_SRGB_CONVERSION_TONEMAP_NEUTRAL{,#ifdef VERTEX #version 150 #extension GL_ARB_explicit_attrib_location : require #ifdef GL_ARB_shader_bit_encoding #extension GL_ARB_shader_bit_encoding : enable #endif #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif uniform vec4 _BlitScaleBias; out vec2 vs_TEXCOORD0; vec2 u_xlat0; int u_xlati0; uvec3 u_xlatu0; void main() { u_xlati0 = gl_VertexID << (1 & int(0x1F)); u_xlatu0.x = uint(u_xlati0) & 2u; u_xlatu0.z = uint(gl_VertexID) & 2u; u_xlat0.xy = vec2(u_xlatu0.xz); gl_Position.xy = u_xlat0.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0); vs_TEXCOORD0.xy = u_xlat0.xy * _BlitScaleBias.xy + _BlitScaleBias.zw; gl_Position.zw = vec2(-1.0, 1.0); return; } #endif #ifdef FRAGMENT #version 150 #extension GL_ARB_explicit_attrib_location : require #ifdef GL_ARB_shader_bit_encoding #extension GL_ARB_shader_bit_encoding : enable #endif #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif uniform vec2 _GlobalMipBias; uniform vec4 _RTHandleScale; uniform vec4 _BlitTexture_TexelSize; uniform vec4 _BloomTexture_TexelSize; uniform vec4 _Lut_Params; uniform vec4 _UserLut_Params; uniform vec4 _Bloom_Params; uniform float _Chroma_Params; uniform vec4 _Vignette_Params1; uniform vec4 _Vignette_Params2; uniform vec2 _Grain_Params; uniform vec4 _Grain_TilingParams; uniform vec4 _Dithering_Params; UNITY_LOCATION(0) uniform sampler2D _BlitTexture; UNITY_LOCATION(1) uniform sampler2D _Bloom_Texture; UNITY_LOCATION(2) uniform sampler2D _Grain_Texture; UNITY_LOCATION(3) uniform sampler2D _InternalLut; UNITY_LOCATION(4) uniform sampler2D _UserLut; UNITY_LOCATION(5) uniform sampler2D _BlueNoise_Texture; in vec2 vs_TEXCOORD0; layout(location = 0) out vec4 SV_Target0; vec4 u_xlat0; bvec3 u_xlatb0; vec4 u_xlat1; bvec3 u_xlatb1; vec4 u_xlat2; vec4 u_xlat3; vec2 u_xlat4; vec3 u_xlat5; vec3 u_xlat6; float u_xlat15; bool u_xlatb15; void main() { u_xlat0 = (-_BlitTexture_TexelSize.xyxy) * vec4(0.5, 0.5, 0.5, 0.5) + _RTHandleScale.xyxy; u_xlat1.xy = min(u_xlat0.zw, vs_TEXCOORD0.xy); u_xlat1 = texture(_BlitTexture, u_xlat1.xy, _GlobalMipBias.x); u_xlat2 = vs_TEXCOORD0.xyxy * vec4(2.0, 2.0, 2.0, 2.0) + vec4(-1.0, -1.0, -1.0, -1.0); u_xlat6.x = dot(u_xlat2.zw, u_xlat2.zw); u_xlat2 = u_xlat6.xxxx * u_xlat2; u_xlat2 = u_xlat2 * vec4(_Chroma_Params); u_xlat2 = u_xlat2 * vec4(-0.333333343, -0.333333343, -0.666666687, -0.666666687) + vs_TEXCOORD0.xyxy; u_xlat0 = min(u_xlat0, u_xlat2); u_xlat2 = texture(_BlitTexture, u_xlat0.xy, _GlobalMipBias.x); u_xlat0 = texture(_BlitTexture, u_xlat0.zw, _GlobalMipBias.x); u_xlat6.xy = (-_BloomTexture_TexelSize.xy) * vec2(0.5, 0.5) + _RTHandleScale.xy; u_xlat6.xy = min(u_xlat6.xy, vs_TEXCOORD0.xy); u_xlat3 = texture(_Bloom_Texture, u_xlat6.xy, _GlobalMipBias.x); u_xlat6.xyz = u_xlat3.xyz * _Bloom_Params.xxx; u_xlat0.x = u_xlat1.x; u_xlat0.y = u_xlat2.y; u_xlat0.xyz = u_xlat6.xyz * _Bloom_Params.yzw + u_xlat0.xyz; u_xlatb15 = 0.0<_Vignette_Params2.z; if(u_xlatb15){ u_xlat1.xy = vs_TEXCOORD0.xy + (-_Vignette_Params2.xy); u_xlat1.yz = abs(u_xlat1.xy) * _Vignette_Params2.zz; u_xlat1.x = u_xlat1.y * _Vignette_Params1.w; u_xlat15 = dot(u_xlat1.xz, u_xlat1.xz); u_xlat15 = (-u_xlat15) + 1.0; u_xlat15 = max(u_xlat15, 0.0); u_xlat15 = log2(u_xlat15); u_xlat15 = u_xlat15 * _Vignette_Params2.w; u_xlat15 = exp2(u_xlat15); u_xlat1.xyz = (-_Vignette_Params1.xyz) + vec3(1.0, 1.0, 1.0); u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz + _Vignette_Params1.xyz; u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xyz; } u_xlat0.xyz = u_xlat0.xyz * _Lut_Params.www; u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0)); u_xlat1.xyz = u_xlat0.xyz * vec3(1.31338608, 1.31338608, 1.31338608); u_xlat2.xyz = u_xlat0.xyz * vec3(0.262677222, 0.262677222, 0.262677222) + vec3(0.0695999935, 0.0695999935, 0.0695999935); u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + vec3(0.00543999998, 0.00543999998, 0.00543999998); u_xlat0.xyz = u_xlat0.xyz * vec3(0.262677222, 0.262677222, 0.262677222) + vec3(0.289999992, 0.289999992, 0.289999992); u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + vec3(0.0816000104, 0.0816000104, 0.0816000104); u_xlat0.xyz = u_xlat2.xyz / u_xlat0.xyz; u_xlat0.xyz = u_xlat0.xyz + vec3(-0.0666666627, -0.0666666627, -0.0666666627); u_xlat0.xyz = u_xlat0.xyz * vec3(1.31338608, 1.31338608, 1.31338608); u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0); u_xlatb15 = 0.0<_UserLut_Params.w; if(u_xlatb15){ u_xlatb1.xyz = greaterThanEqual(vec4(0.00313080009, 0.00313080009, 0.00313080009, 0.0), u_xlat0.xyzx).xyz; u_xlat2.xyz = u_xlat0.xyz * vec3(12.9232101, 12.9232101, 12.9232101); u_xlat3.xyz = log2(u_xlat0.xyz); u_xlat3.xyz = u_xlat3.xyz * vec3(0.416666657, 0.416666657, 0.416666657); u_xlat3.xyz = exp2(u_xlat3.xyz); u_xlat3.xyz = u_xlat3.xyz * vec3(1.05499995, 1.05499995, 1.05499995) + vec3(-0.0549999997, -0.0549999997, -0.0549999997); u_xlat1.x = (u_xlatb1.x) ? u_xlat2.x : u_xlat3.x; u_xlat1.y = (u_xlatb1.y) ? u_xlat2.y : u_xlat3.y; u_xlat1.z = (u_xlatb1.z) ? u_xlat2.z : u_xlat3.z; u_xlat2.xyz = u_xlat1.zxy * _UserLut_Params.zzz; u_xlat15 = floor(u_xlat2.x); u_xlat2.xw = _UserLut_Params.xy * vec2(0.5, 0.5); u_xlat2.yz = u_xlat2.yz * _UserLut_Params.xy + u_xlat2.xw; u_xlat2.x = u_xlat15 * _UserLut_Params.y + u_xlat2.y; u_xlat3 = textureLod(_UserLut, u_xlat2.xz, 0.0); u_xlat4.x = _UserLut_Params.y; u_xlat4.y = 0.0; u_xlat2.xy = u_xlat2.xz + u_xlat4.xy; u_xlat2 = textureLod(_UserLut, u_xlat2.xy, 0.0); u_xlat15 = u_xlat1.z * _UserLut_Params.z + (-u_xlat15); u_xlat2.xyz = (-u_xlat3.xyz) + u_xlat2.xyz; u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz; u_xlat2.xyz = (-u_xlat1.xyz) + u_xlat2.xyz; u_xlat1.xyz = _UserLut_Params.www * u_xlat2.xyz + u_xlat1.xyz; u_xlat2.xyz = u_xlat1.xyz * vec3(0.0773993805, 0.0773993805, 0.0773993805); u_xlat3.xyz = u_xlat1.xyz + vec3(0.0549999997, 0.0549999997, 0.0549999997); u_xlat3.xyz = u_xlat3.xyz * vec3(0.947867334, 0.947867334, 0.947867334); u_xlat3.xyz = log2(abs(u_xlat3.xyz)); u_xlat3.xyz = u_xlat3.xyz * vec3(2.4000001, 2.4000001, 2.4000001); u_xlat3.xyz = exp2(u_xlat3.xyz); u_xlatb1.xyz = greaterThanEqual(vec4(0.0404499993, 0.0404499993, 0.0404499993, 0.0), u_xlat1.xyzx).xyz; u_xlat0.x = (u_xlatb1.x) ? u_xlat2.x : u_xlat3.x; u_xlat0.y = (u_xlatb1.y) ? u_xlat2.y : u_xlat3.y; u_xlat0.z = (u_xlatb1.z) ? u_xlat2.z : u_xlat3.z; } u_xlat0.xyw = u_xlat0.xyz * _Lut_Params.zzz; u_xlat15 = floor(u_xlat0.w); u_xlat1.xy = _Lut_Params.xy * vec2(0.5, 0.5); u_xlat1.yz = u_xlat0.xy * _Lut_Params.xy + u_xlat1.xy; u_xlat1.x = u_xlat15 * _Lut_Params.y + u_xlat1.y; u_xlat2 = textureLod(_InternalLut, u_xlat1.xz, 0.0); u_xlat0.x = _Lut_Params.y; u_xlat0.y = 0.0; u_xlat0.xy = u_xlat0.xy + u_xlat1.xz; u_xlat1 = textureLod(_InternalLut, u_xlat0.xy, 0.0); u_xlat0.x = u_xlat0.z * _Lut_Params.z + (-u_xlat15); u_xlat5.xyz = (-u_xlat2.xyz) + u_xlat1.xyz; u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat2.xyz; u_xlat1.xy = vs_TEXCOORD0.xy * _Grain_TilingParams.xy + _Grain_TilingParams.zw; u_xlat1 = texture(_Grain_Texture, u_xlat1.xy, _GlobalMipBias.x); u_xlat15 = u_xlat1.w + -0.5; u_xlat15 = u_xlat15 + u_xlat15; u_xlat1.x = dot(u_xlat0.xyz, vec3(0.212672904, 0.715152204, 0.0721750036)); u_xlat1.x = sqrt(u_xlat1.x); u_xlat1.x = _Grain_Params.y * (-u_xlat1.x) + 1.0; u_xlat6.xyz = vec3(u_xlat15) * u_xlat0.xyz; u_xlat6.xyz = u_xlat6.xyz * _Grain_Params.xxx; u_xlat0.xyz = u_xlat6.xyz * u_xlat1.xxx + u_xlat0.xyz; u_xlatb1.xyz = greaterThanEqual(vec4(0.00313080009, 0.00313080009, 0.00313080009, 0.0), u_xlat0.xyzx).xyz; u_xlat2.xyz = u_xlat0.xyz * vec3(12.9232101, 12.9232101, 12.9232101); u_xlat0.xyz = log2(abs(u_xlat0.xyz)); u_xlat0.xyz = u_xlat0.xyz * vec3(0.416666657, 0.416666657, 0.416666657); u_xlat0.xyz = exp2(u_xlat0.xyz); u_xlat0.xyz = u_xlat0.xyz * vec3(1.05499995, 1.05499995, 1.05499995) + vec3(-0.0549999997, -0.0549999997, -0.0549999997); { vec4 hlslcc_movcTemp = u_xlat0; hlslcc_movcTemp.x = (u_xlatb1.x) ? u_xlat2.x : u_xlat0.x; hlslcc_movcTemp.y = (u_xlatb1.y) ? u_xlat2.y : u_xlat0.y; hlslcc_movcTemp.z = (u_xlatb1.z) ? u_xlat2.z : u_xlat0.z; u_xlat0 = hlslcc_movcTemp; } u_xlat1.xy = vs_TEXCOORD0.xy * _Dithering_Params.xy + _Dithering_Params.zw; u_xlat1 = texture(_BlueNoise_Texture, u_xlat1.xy, _GlobalMipBias.x); u_xlat15 = u_xlat1.w * 2.0 + -1.0; u_xlatb1.x = u_xlat15>=0.0; u_xlat1.x = (u_xlatb1.x) ? 1.0 : -1.0; u_xlat15 = -abs(u_xlat15) + 1.0; u_xlat15 = sqrt(u_xlat15); u_xlat15 = (-u_xlat15) + 1.0; u_xlat15 = u_xlat15 * u_xlat1.x; u_xlatb1.xyz = greaterThanEqual(vec4(0.00313080009, 0.00313080009, 0.00313080009, 0.0), u_xlat0.xyzx).xyz; u_xlat2.xyz = u_xlat0.xyz * vec3(12.9232101, 12.9232101, 12.9232101); u_xlat0.xyz = log2(abs(u_xlat0.xyz)); u_xlat0.xyz = u_xlat0.xyz * vec3(0.416666657, 0.416666657, 0.416666657); u_xlat0.xyz = exp2(u_xlat0.xyz); u_xlat0.xyz = u_xlat0.xyz * vec3(1.05499995, 1.05499995, 1.05499995) + vec3(-0.0549999997, -0.0549999997, -0.0549999997); { vec4 hlslcc_movcTemp = u_xlat0; hlslcc_movcTemp.x = (u_xlatb1.x) ? u_xlat2.x : u_xlat0.x; hlslcc_movcTemp.y = (u_xlatb1.y) ? u_xlat2.y : u_xlat0.y; hlslcc_movcTemp.z = (u_xlatb1.z) ? u_xlat2.z : u_xlat0.z; u_xlat0 = hlslcc_movcTemp; } u_xlat0.xyz = vec3(u_xlat15) * vec3(0.00392156886, 0.00392156886, 0.00392156886) + u_xlat0.xyz; u_xlat1.xyz = u_xlat0.xyz * vec3(0.0773993805, 0.0773993805, 0.0773993805); u_xlat2.xyz = u_xlat0.xyz + vec3(0.0549999997, 0.0549999997, 0.0549999997); u_xlat2.xyz = u_xlat2.xyz * vec3(0.947867334, 0.947867334, 0.947867334); u_xlat2.xyz = log2(abs(u_xlat2.xyz)); u_xlat2.xyz = u_xlat2.xyz * vec3(2.4000001, 2.4000001, 2.4000001); u_xlat2.xyz = exp2(u_xlat2.xyz); u_xlatb0.xyz = greaterThanEqual(vec4(0.0404499993, 0.0404499993, 0.0404499993, 0.0), u_xlat0.xyzx).xyz; u_xlat0.x = (u_xlatb0.x) ? u_xlat1.x : u_xlat2.x; u_xlat0.y = (u_xlatb0.y) ? u_xlat1.y : u_xlat2.y; u_xlat0.z = (u_xlatb0.z) ? u_xlat1.z : u_xlat2.z; SV_Target0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0)); SV_Target0.w = 1.0; return; } #endif $Globals _GlobalMipBias_RTHandleScale_BlitTexture_TexelSize _BloomTexture_TexelSize0 _Lut_Params@_UserLut_ParamsP _Bloom_Params`_Chroma_Paramsp_Vignette_Params1_Vignette_Params2 _Grain_Params_Grain_TilingParams_Dithering_Params _BlitTexture_Bloom_Texture_Grain_Texture _InternalLut_UserLut_BlueNoise_Texture$Globals