2232 lines
124 KiB
GLSL
2232 lines
124 KiB
GLSL
Shader "Hidden/Universal Render Pipeline/LensFlareScreenSpace"
|
|
{
|
|
Properties
|
|
{
|
|
}
|
|
SubShader
|
|
{
|
|
Tags { "RenderPipeline" = "UniversalPipeline" }
|
|
Pass
|
|
{
|
|
Name "LensFlareScreenSpac Prefilter"
|
|
LOD 100
|
|
Tags { "QUEUE" = "Transparent" "RenderPipeline" = "UniversalPipeline" "RenderType" = "Transparent" }
|
|
ZTest Always
|
|
ZWrite Off
|
|
Cull Off
|
|
GpuProgramID 42837
|
|
|
|
HLSLPROGRAM
|
|
|
|
// https://docs.unity3d.com/Manual/SL-PragmaDirectives.html
|
|
#pragma vertex vert
|
|
#pragma fragment frag
|
|
#pragma target 4.0
|
|
#pragma multi_compile _ STEREO_INSTANCING_ON
|
|
|
|
|
|
#ifndef STEREO_INSTANCING_ON
|
|
#define ANY_SHADER_VARIANT_ACTIVE
|
|
|
|
static float4 gl_Position;
|
|
static int gl_VertexIndex;
|
|
static int gl_BaseVertexARB;
|
|
static float2 vertex_output_1;
|
|
|
|
struct Vertex_Stage_Input
|
|
{
|
|
uint gl_VertexIndex : SV_VertexID;
|
|
uint gl_BaseVertexARB : SV_StartVertexLocation;
|
|
};
|
|
|
|
struct Vertex_Stage_Output
|
|
{
|
|
float2 vertex_output_1 : TEXCOORD; // TEXCOORD
|
|
float4 gl_Position : SV_Position;
|
|
};
|
|
|
|
void vert_main()
|
|
{
|
|
uint vertex_unnamed_19 = (uint(gl_VertexIndex) - uint(gl_BaseVertexARB)) & 1u;
|
|
uint vertex_unnamed_24 = (uint(gl_VertexIndex) - uint(gl_BaseVertexARB)) >> 1u;
|
|
float vertex_unnamed_29 = float(vertex_unnamed_24);
|
|
precise float vertex_unnamed_32 = (-0.0f) - float((vertex_unnamed_19 + vertex_unnamed_24) & 1u);
|
|
precise float vertex_unnamed_34 = vertex_unnamed_32 + 1.0f;
|
|
precise float vertex_unnamed_36 = (-0.0f) - vertex_unnamed_34;
|
|
precise float vertex_unnamed_37 = vertex_unnamed_36 + 1.0f;
|
|
vertex_output_1.x = vertex_unnamed_29;
|
|
vertex_output_1.y = vertex_unnamed_37;
|
|
gl_Position.x = mad(vertex_unnamed_29, 2.0f, -1.0f);
|
|
gl_Position.y = mad(float((((-vertex_unnamed_19) + (-vertex_unnamed_24)) + 1u) & 1u), 2.0f, -1.0f);
|
|
gl_Position.z = 1.0f;
|
|
gl_Position.w = 1.0f;
|
|
}
|
|
|
|
Vertex_Stage_Output vert(Vertex_Stage_Input stage_input)
|
|
{
|
|
gl_VertexIndex = int(stage_input.gl_VertexIndex + stage_input.gl_BaseVertexARB);
|
|
gl_BaseVertexARB = stage_input.gl_BaseVertexARB;
|
|
vert_main();
|
|
Vertex_Stage_Output stage_output;
|
|
stage_output.gl_Position = gl_Position;
|
|
stage_output.vertex_output_1 = vertex_output_1;
|
|
return stage_output;
|
|
}
|
|
|
|
#endif // !STEREO_INSTANCING_ON
|
|
|
|
|
|
#ifdef STEREO_INSTANCING_ON
|
|
#define ANY_SHADER_VARIANT_ACTIVE
|
|
|
|
static float4 gl_Position;
|
|
static uint gl_Layer;
|
|
static int gl_VertexIndex;
|
|
static int gl_InstanceIndex;
|
|
static int gl_BaseVertexARB;
|
|
static int gl_BaseInstanceARB;
|
|
static float2 vertex_output_1;
|
|
|
|
struct Vertex_Stage_Input
|
|
{
|
|
uint gl_VertexIndex : SV_VertexID;
|
|
uint gl_InstanceIndex : SV_InstanceID;
|
|
uint gl_BaseVertexARB : SV_StartVertexLocation;
|
|
uint gl_BaseInstanceARB : SV_StartInstanceLocation;
|
|
};
|
|
|
|
struct Vertex_Stage_Output
|
|
{
|
|
float2 vertex_output_1 : TEXCOORD; // TEXCOORD
|
|
float4 gl_Position : SV_Position;
|
|
uint gl_Layer : SV_RenderTargetArrayIndex;
|
|
};
|
|
|
|
void vert_main()
|
|
{
|
|
uint vertex_unnamed_22 = (uint(gl_VertexIndex) - uint(gl_BaseVertexARB)) & 1u;
|
|
uint vertex_unnamed_27 = (uint(gl_VertexIndex) - uint(gl_BaseVertexARB)) >> 1u;
|
|
float vertex_unnamed_32 = float(vertex_unnamed_27);
|
|
precise float vertex_unnamed_35 = (-0.0f) - float((vertex_unnamed_22 + vertex_unnamed_27) & 1u);
|
|
precise float vertex_unnamed_37 = vertex_unnamed_35 + 1.0f;
|
|
precise float vertex_unnamed_39 = (-0.0f) - vertex_unnamed_37;
|
|
precise float vertex_unnamed_40 = vertex_unnamed_39 + 1.0f;
|
|
vertex_output_1.x = vertex_unnamed_32;
|
|
vertex_output_1.y = vertex_unnamed_40;
|
|
gl_Position.x = mad(vertex_unnamed_32, 2.0f, -1.0f);
|
|
gl_Position.y = mad(float((((-vertex_unnamed_22) + (-vertex_unnamed_27)) + 1u) & 1u), 2.0f, -1.0f);
|
|
gl_Position.z = 1.0f;
|
|
gl_Position.w = 1.0f;
|
|
gl_Layer = int((uint(gl_InstanceIndex) - uint(gl_BaseInstanceARB)) & 1u);
|
|
}
|
|
|
|
Vertex_Stage_Output vert(Vertex_Stage_Input stage_input)
|
|
{
|
|
gl_VertexIndex = int(stage_input.gl_VertexIndex + stage_input.gl_BaseVertexARB);
|
|
gl_InstanceIndex = int(stage_input.gl_InstanceIndex + stage_input.gl_BaseInstanceARB);
|
|
gl_BaseVertexARB = stage_input.gl_BaseVertexARB;
|
|
gl_BaseInstanceARB = stage_input.gl_BaseInstanceARB;
|
|
vert_main();
|
|
Vertex_Stage_Output stage_output;
|
|
stage_output.gl_Position = gl_Position;
|
|
stage_output.gl_Layer = gl_Layer;
|
|
stage_output.vertex_output_1 = vertex_output_1;
|
|
return stage_output;
|
|
}
|
|
|
|
#endif // STEREO_INSTANCING_ON
|
|
|
|
|
|
#ifndef STEREO_INSTANCING_ON
|
|
#define ANY_SHADER_VARIANT_ACTIVE
|
|
|
|
float4 _RTHandleScale;
|
|
float4 _LensFlareScreenSpaceBloomMipTexture_TexelSize;
|
|
float4 _LensFlareScreenSpaceParams4;
|
|
|
|
static float4 fragment_uniform_buffer_0[143];
|
|
Texture2D<float4> _LensFlareScreenSpaceBloomMipTexture;
|
|
SamplerState S0;
|
|
|
|
static float2 fragment_input_1;
|
|
static float4 fragment_output_0;
|
|
|
|
struct Fragment_Stage_Input
|
|
{
|
|
float2 fragment_input_1 : TEXCOORD; // TEXCOORD
|
|
};
|
|
|
|
struct Fragment_Stage_Output
|
|
{
|
|
float4 fragment_output_0 : SV_Target0;
|
|
};
|
|
|
|
void frag_main()
|
|
{
|
|
float fragment_unnamed_35 = floor(fragment_uniform_buffer_0[142u].z);
|
|
precise float fragment_unnamed_36 = fragment_unnamed_35 + fragment_unnamed_35;
|
|
precise float fragment_unnamed_37 = (-0.0f) - fragment_unnamed_36;
|
|
bool fragment_unnamed_40 = fragment_unnamed_36 >= fragment_unnamed_37;
|
|
precise float fragment_unnamed_49 = asfloat(fragment_unnamed_40 ? 1056964608u : 3204448256u) * fragment_unnamed_35;
|
|
precise float fragment_unnamed_51 = frac(fragment_unnamed_49) * asfloat(fragment_unnamed_40 ? 1073741824u : 3221225472u);
|
|
bool fragment_unnamed_52 = fragment_unnamed_51 == 0.0f;
|
|
float fragment_unnamed_57 = frac(fragment_uniform_buffer_0[142u].z);
|
|
precise float fragment_unnamed_58 = (-0.0f) - fragment_unnamed_57;
|
|
precise float fragment_unnamed_59 = fragment_unnamed_58 + 1.0f;
|
|
precise float fragment_unnamed_61 = (-0.0f) - fragment_unnamed_59;
|
|
float fragment_unnamed_62 = fragment_unnamed_52 ? fragment_unnamed_57 : fragment_unnamed_61;
|
|
precise float fragment_unnamed_63 = (-0.0f) - fragment_unnamed_59;
|
|
precise float fragment_unnamed_64 = fragment_unnamed_63 + 1.0f;
|
|
precise float fragment_unnamed_65 = (-0.0f) - fragment_unnamed_59;
|
|
precise float fragment_unnamed_66 = (-0.0f) - fragment_unnamed_64;
|
|
float fragment_unnamed_67 = fragment_unnamed_52 ? fragment_unnamed_65 : fragment_unnamed_66;
|
|
precise float fragment_unnamed_68 = (-0.0f) - fragment_unnamed_67;
|
|
precise float fragment_unnamed_86 = (-0.0f) - fragment_unnamed_62;
|
|
precise float fragment_unnamed_104 = (-0.0f) - fragment_uniform_buffer_0[137u].x;
|
|
precise float fragment_unnamed_106 = (-0.0f) - fragment_uniform_buffer_0[137u].y;
|
|
float fragment_unnamed_112 = mad(fragment_unnamed_104, 0.5f, fragment_uniform_buffer_0[28u].x);
|
|
float fragment_unnamed_114 = mad(fragment_unnamed_106, 0.5f, fragment_uniform_buffer_0[28u].y);
|
|
float4 fragment_unnamed_125 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float2(min(fragment_unnamed_112, clamp(mad(fragment_unnamed_62, fragment_uniform_buffer_0[137u].x, fragment_input_1.x), 0.0f, 1.0f)), min(fragment_unnamed_114, clamp(mad(fragment_unnamed_67, fragment_uniform_buffer_0[137u].y, fragment_input_1.y), 0.0f, 1.0f))), fragment_uniform_buffer_0[4u].x);
|
|
float4 fragment_unnamed_133 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float2(min(fragment_unnamed_112, clamp(mad(fragment_unnamed_86, fragment_uniform_buffer_0[137u].x, fragment_input_1.x), 0.0f, 1.0f)), min(fragment_unnamed_114, clamp(mad(fragment_unnamed_68, fragment_uniform_buffer_0[137u].y, fragment_input_1.y), 0.0f, 1.0f))), fragment_uniform_buffer_0[4u].x);
|
|
precise float fragment_unnamed_138 = fragment_unnamed_125.x + fragment_unnamed_133.x;
|
|
precise float fragment_unnamed_139 = fragment_unnamed_125.y + fragment_unnamed_133.y;
|
|
precise float fragment_unnamed_140 = fragment_unnamed_125.z + fragment_unnamed_133.z;
|
|
precise float fragment_unnamed_141 = fragment_unnamed_138 * 0.5f;
|
|
precise float fragment_unnamed_142 = fragment_unnamed_139 * 0.5f;
|
|
precise float fragment_unnamed_143 = fragment_unnamed_140 * 0.5f;
|
|
float fragment_unnamed_145 = max(max(fragment_unnamed_143, fragment_unnamed_142), fragment_unnamed_141);
|
|
precise float fragment_unnamed_149 = (-0.0f) - fragment_uniform_buffer_0[142u].w;
|
|
precise float fragment_unnamed_150 = fragment_unnamed_145 + fragment_unnamed_149;
|
|
precise float fragment_unnamed_154 = max(fragment_unnamed_150, 0.0f) / max(fragment_unnamed_145, 9.9999997473787516355514526367188e-05f);
|
|
precise float fragment_unnamed_155 = fragment_unnamed_154 * fragment_unnamed_141;
|
|
precise float fragment_unnamed_156 = fragment_unnamed_154 * fragment_unnamed_142;
|
|
precise float fragment_unnamed_157 = fragment_unnamed_154 * fragment_unnamed_143;
|
|
fragment_output_0.x = fragment_unnamed_155;
|
|
fragment_output_0.y = fragment_unnamed_156;
|
|
fragment_output_0.z = fragment_unnamed_157;
|
|
fragment_output_0.w = 1.0f;
|
|
}
|
|
|
|
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
|
|
{
|
|
fragment_uniform_buffer_0[28] = float4(_RTHandleScale[0], _RTHandleScale[1], _RTHandleScale[2], _RTHandleScale[3]);
|
|
|
|
fragment_uniform_buffer_0[137] = float4(_LensFlareScreenSpaceBloomMipTexture_TexelSize[0], _LensFlareScreenSpaceBloomMipTexture_TexelSize[1], _LensFlareScreenSpaceBloomMipTexture_TexelSize[2], _LensFlareScreenSpaceBloomMipTexture_TexelSize[3]);
|
|
|
|
fragment_uniform_buffer_0[142] = float4(_LensFlareScreenSpaceParams4[0], _LensFlareScreenSpaceParams4[1], _LensFlareScreenSpaceParams4[2], _LensFlareScreenSpaceParams4[3]);
|
|
|
|
fragment_input_1 = stage_input.fragment_input_1;
|
|
frag_main();
|
|
Fragment_Stage_Output stage_output;
|
|
stage_output.fragment_output_0 = fragment_output_0;
|
|
return stage_output;
|
|
}
|
|
|
|
#endif // !STEREO_INSTANCING_ON
|
|
|
|
|
|
#ifdef STEREO_INSTANCING_ON
|
|
#define ANY_SHADER_VARIANT_ACTIVE
|
|
|
|
float4 _RTHandleScale;
|
|
float4 _LensFlareScreenSpaceBloomMipTexture_TexelSize;
|
|
float4 _LensFlareScreenSpaceParams4;
|
|
|
|
static float4 fragment_uniform_buffer_0[112];
|
|
Texture2DArray<float4> _LensFlareScreenSpaceBloomMipTexture;
|
|
SamplerState S0;
|
|
|
|
static uint gl_Layer;
|
|
static float2 fragment_input_1;
|
|
static float4 fragment_output_0;
|
|
|
|
struct Fragment_Stage_Input
|
|
{
|
|
float2 fragment_input_1 : TEXCOORD; // TEXCOORD
|
|
uint gl_Layer : SV_RenderTargetArrayIndex;
|
|
};
|
|
|
|
struct Fragment_Stage_Output
|
|
{
|
|
float4 fragment_output_0 : SV_Target0;
|
|
};
|
|
|
|
void frag_main()
|
|
{
|
|
float fragment_unnamed_37 = floor(fragment_uniform_buffer_0[111u].z);
|
|
precise float fragment_unnamed_38 = fragment_unnamed_37 + fragment_unnamed_37;
|
|
precise float fragment_unnamed_39 = (-0.0f) - fragment_unnamed_38;
|
|
bool fragment_unnamed_42 = fragment_unnamed_38 >= fragment_unnamed_39;
|
|
precise float fragment_unnamed_51 = asfloat(fragment_unnamed_42 ? 1056964608u : 3204448256u) * fragment_unnamed_37;
|
|
precise float fragment_unnamed_53 = frac(fragment_unnamed_51) * asfloat(fragment_unnamed_42 ? 1073741824u : 3221225472u);
|
|
bool fragment_unnamed_54 = fragment_unnamed_53 == 0.0f;
|
|
float fragment_unnamed_59 = frac(fragment_uniform_buffer_0[111u].z);
|
|
precise float fragment_unnamed_60 = (-0.0f) - fragment_unnamed_59;
|
|
precise float fragment_unnamed_61 = fragment_unnamed_60 + 1.0f;
|
|
precise float fragment_unnamed_63 = (-0.0f) - fragment_unnamed_61;
|
|
float fragment_unnamed_64 = fragment_unnamed_54 ? fragment_unnamed_59 : fragment_unnamed_63;
|
|
precise float fragment_unnamed_65 = (-0.0f) - fragment_unnamed_61;
|
|
precise float fragment_unnamed_66 = fragment_unnamed_65 + 1.0f;
|
|
precise float fragment_unnamed_67 = (-0.0f) - fragment_unnamed_61;
|
|
precise float fragment_unnamed_68 = (-0.0f) - fragment_unnamed_66;
|
|
float fragment_unnamed_69 = fragment_unnamed_54 ? fragment_unnamed_67 : fragment_unnamed_68;
|
|
precise float fragment_unnamed_80 = (-0.0f) - fragment_unnamed_69;
|
|
precise float fragment_unnamed_95 = (-0.0f) - fragment_unnamed_64;
|
|
precise float fragment_unnamed_106 = (-0.0f) - fragment_uniform_buffer_0[106u].x;
|
|
precise float fragment_unnamed_108 = (-0.0f) - fragment_uniform_buffer_0[106u].y;
|
|
float fragment_unnamed_114 = mad(fragment_unnamed_106, 0.5f, fragment_uniform_buffer_0[27u].x);
|
|
float fragment_unnamed_116 = mad(fragment_unnamed_108, 0.5f, fragment_uniform_buffer_0[27u].y);
|
|
float fragment_unnamed_122 = float(uint(gl_Layer));
|
|
float4 fragment_unnamed_129 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float3(min(fragment_unnamed_114, clamp(mad(fragment_unnamed_95, fragment_uniform_buffer_0[106u].x, fragment_input_1.x), 0.0f, 1.0f)), min(fragment_unnamed_116, clamp(mad(fragment_unnamed_80, fragment_uniform_buffer_0[106u].y, fragment_input_1.y), 0.0f, 1.0f)), fragment_unnamed_122), fragment_uniform_buffer_0[4u].x);
|
|
float4 fragment_unnamed_138 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float3(min(fragment_unnamed_114, clamp(mad(fragment_unnamed_64, fragment_uniform_buffer_0[106u].x, fragment_input_1.x), 0.0f, 1.0f)), min(fragment_unnamed_116, clamp(mad(fragment_unnamed_69, fragment_uniform_buffer_0[106u].y, fragment_input_1.y), 0.0f, 1.0f)), fragment_unnamed_122), fragment_uniform_buffer_0[4u].x);
|
|
precise float fragment_unnamed_143 = fragment_unnamed_129.x + fragment_unnamed_138.x;
|
|
precise float fragment_unnamed_144 = fragment_unnamed_129.y + fragment_unnamed_138.y;
|
|
precise float fragment_unnamed_145 = fragment_unnamed_129.z + fragment_unnamed_138.z;
|
|
precise float fragment_unnamed_146 = fragment_unnamed_143 * 0.5f;
|
|
precise float fragment_unnamed_147 = fragment_unnamed_144 * 0.5f;
|
|
precise float fragment_unnamed_148 = fragment_unnamed_145 * 0.5f;
|
|
float fragment_unnamed_150 = max(max(fragment_unnamed_148, fragment_unnamed_147), fragment_unnamed_146);
|
|
precise float fragment_unnamed_154 = (-0.0f) - fragment_uniform_buffer_0[111u].w;
|
|
precise float fragment_unnamed_155 = fragment_unnamed_150 + fragment_unnamed_154;
|
|
precise float fragment_unnamed_159 = max(fragment_unnamed_155, 0.0f) / max(fragment_unnamed_150, 9.9999997473787516355514526367188e-05f);
|
|
precise float fragment_unnamed_160 = fragment_unnamed_159 * fragment_unnamed_146;
|
|
precise float fragment_unnamed_161 = fragment_unnamed_159 * fragment_unnamed_147;
|
|
precise float fragment_unnamed_162 = fragment_unnamed_159 * fragment_unnamed_148;
|
|
fragment_output_0.x = fragment_unnamed_160;
|
|
fragment_output_0.y = fragment_unnamed_161;
|
|
fragment_output_0.z = fragment_unnamed_162;
|
|
fragment_output_0.w = 1.0f;
|
|
}
|
|
|
|
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
|
|
{
|
|
fragment_uniform_buffer_0[27] = float4(_RTHandleScale[0], _RTHandleScale[1], _RTHandleScale[2], _RTHandleScale[3]);
|
|
|
|
fragment_uniform_buffer_0[106] = float4(_LensFlareScreenSpaceBloomMipTexture_TexelSize[0], _LensFlareScreenSpaceBloomMipTexture_TexelSize[1], _LensFlareScreenSpaceBloomMipTexture_TexelSize[2], _LensFlareScreenSpaceBloomMipTexture_TexelSize[3]);
|
|
|
|
fragment_uniform_buffer_0[111] = float4(_LensFlareScreenSpaceParams4[0], _LensFlareScreenSpaceParams4[1], _LensFlareScreenSpaceParams4[2], _LensFlareScreenSpaceParams4[3]);
|
|
|
|
gl_Layer = stage_input.gl_Layer;
|
|
fragment_input_1 = stage_input.fragment_input_1;
|
|
frag_main();
|
|
Fragment_Stage_Output stage_output;
|
|
stage_output.fragment_output_0 = fragment_output_0;
|
|
return stage_output;
|
|
}
|
|
|
|
#endif // STEREO_INSTANCING_ON
|
|
|
|
|
|
ENDHLSL
|
|
}
|
|
Pass
|
|
{
|
|
Name "LensFlareScreenSpace Downsample"
|
|
LOD 100
|
|
Tags { "QUEUE" = "Transparent" "RenderPipeline" = "UniversalPipeline" "RenderType" = "Transparent" }
|
|
ZTest Always
|
|
ZWrite Off
|
|
Cull Off
|
|
GpuProgramID 106347
|
|
|
|
HLSLPROGRAM
|
|
|
|
// https://docs.unity3d.com/Manual/SL-PragmaDirectives.html
|
|
#pragma vertex vert
|
|
#pragma fragment frag
|
|
#pragma target 4.0
|
|
#pragma multi_compile _ STEREO_INSTANCING_ON
|
|
|
|
|
|
#ifndef STEREO_INSTANCING_ON
|
|
#define ANY_SHADER_VARIANT_ACTIVE
|
|
|
|
static float4 gl_Position;
|
|
static int gl_VertexIndex;
|
|
static int gl_BaseVertexARB;
|
|
static float2 vertex_output_1;
|
|
|
|
struct Vertex_Stage_Input
|
|
{
|
|
uint gl_VertexIndex : SV_VertexID;
|
|
uint gl_BaseVertexARB : SV_StartVertexLocation;
|
|
};
|
|
|
|
struct Vertex_Stage_Output
|
|
{
|
|
float2 vertex_output_1 : TEXCOORD; // TEXCOORD
|
|
float4 gl_Position : SV_Position;
|
|
};
|
|
|
|
void vert_main()
|
|
{
|
|
uint vertex_unnamed_19 = (uint(gl_VertexIndex) - uint(gl_BaseVertexARB)) & 1u;
|
|
uint vertex_unnamed_24 = (uint(gl_VertexIndex) - uint(gl_BaseVertexARB)) >> 1u;
|
|
float vertex_unnamed_29 = float(vertex_unnamed_24);
|
|
precise float vertex_unnamed_32 = (-0.0f) - float((vertex_unnamed_19 + vertex_unnamed_24) & 1u);
|
|
precise float vertex_unnamed_34 = vertex_unnamed_32 + 1.0f;
|
|
precise float vertex_unnamed_36 = (-0.0f) - vertex_unnamed_34;
|
|
precise float vertex_unnamed_37 = vertex_unnamed_36 + 1.0f;
|
|
vertex_output_1.x = vertex_unnamed_29;
|
|
vertex_output_1.y = vertex_unnamed_37;
|
|
gl_Position.x = mad(vertex_unnamed_29, 2.0f, -1.0f);
|
|
gl_Position.y = mad(float((((-vertex_unnamed_19) + (-vertex_unnamed_24)) + 1u) & 1u), 2.0f, -1.0f);
|
|
gl_Position.z = 1.0f;
|
|
gl_Position.w = 1.0f;
|
|
}
|
|
|
|
Vertex_Stage_Output vert(Vertex_Stage_Input stage_input)
|
|
{
|
|
gl_VertexIndex = int(stage_input.gl_VertexIndex + stage_input.gl_BaseVertexARB);
|
|
gl_BaseVertexARB = stage_input.gl_BaseVertexARB;
|
|
vert_main();
|
|
Vertex_Stage_Output stage_output;
|
|
stage_output.gl_Position = gl_Position;
|
|
stage_output.vertex_output_1 = vertex_output_1;
|
|
return stage_output;
|
|
}
|
|
|
|
#endif // !STEREO_INSTANCING_ON
|
|
|
|
|
|
#ifdef STEREO_INSTANCING_ON
|
|
#define ANY_SHADER_VARIANT_ACTIVE
|
|
|
|
static float4 gl_Position;
|
|
static uint gl_Layer;
|
|
static int gl_VertexIndex;
|
|
static int gl_InstanceIndex;
|
|
static int gl_BaseVertexARB;
|
|
static int gl_BaseInstanceARB;
|
|
static float2 vertex_output_1;
|
|
|
|
struct Vertex_Stage_Input
|
|
{
|
|
uint gl_VertexIndex : SV_VertexID;
|
|
uint gl_InstanceIndex : SV_InstanceID;
|
|
uint gl_BaseVertexARB : SV_StartVertexLocation;
|
|
uint gl_BaseInstanceARB : SV_StartInstanceLocation;
|
|
};
|
|
|
|
struct Vertex_Stage_Output
|
|
{
|
|
float2 vertex_output_1 : TEXCOORD; // TEXCOORD
|
|
float4 gl_Position : SV_Position;
|
|
uint gl_Layer : SV_RenderTargetArrayIndex;
|
|
};
|
|
|
|
void vert_main()
|
|
{
|
|
uint vertex_unnamed_22 = (uint(gl_VertexIndex) - uint(gl_BaseVertexARB)) & 1u;
|
|
uint vertex_unnamed_27 = (uint(gl_VertexIndex) - uint(gl_BaseVertexARB)) >> 1u;
|
|
float vertex_unnamed_32 = float(vertex_unnamed_27);
|
|
precise float vertex_unnamed_35 = (-0.0f) - float((vertex_unnamed_22 + vertex_unnamed_27) & 1u);
|
|
precise float vertex_unnamed_37 = vertex_unnamed_35 + 1.0f;
|
|
precise float vertex_unnamed_39 = (-0.0f) - vertex_unnamed_37;
|
|
precise float vertex_unnamed_40 = vertex_unnamed_39 + 1.0f;
|
|
vertex_output_1.x = vertex_unnamed_32;
|
|
vertex_output_1.y = vertex_unnamed_40;
|
|
gl_Position.x = mad(vertex_unnamed_32, 2.0f, -1.0f);
|
|
gl_Position.y = mad(float((((-vertex_unnamed_22) + (-vertex_unnamed_27)) + 1u) & 1u), 2.0f, -1.0f);
|
|
gl_Position.z = 1.0f;
|
|
gl_Position.w = 1.0f;
|
|
gl_Layer = int((uint(gl_InstanceIndex) - uint(gl_BaseInstanceARB)) & 1u);
|
|
}
|
|
|
|
Vertex_Stage_Output vert(Vertex_Stage_Input stage_input)
|
|
{
|
|
gl_VertexIndex = int(stage_input.gl_VertexIndex + stage_input.gl_BaseVertexARB);
|
|
gl_InstanceIndex = int(stage_input.gl_InstanceIndex + stage_input.gl_BaseInstanceARB);
|
|
gl_BaseVertexARB = stage_input.gl_BaseVertexARB;
|
|
gl_BaseInstanceARB = stage_input.gl_BaseInstanceARB;
|
|
vert_main();
|
|
Vertex_Stage_Output stage_output;
|
|
stage_output.gl_Position = gl_Position;
|
|
stage_output.gl_Layer = gl_Layer;
|
|
stage_output.vertex_output_1 = vertex_output_1;
|
|
return stage_output;
|
|
}
|
|
|
|
#endif // STEREO_INSTANCING_ON
|
|
|
|
|
|
#ifndef STEREO_INSTANCING_ON
|
|
#define ANY_SHADER_VARIANT_ACTIVE
|
|
|
|
float4 _RTHandleScale;
|
|
float4 _ScreenSize;
|
|
float4 _LensFlareScreenSpaceStreakTex_TexelSize;
|
|
float4 _LensFlareScreenSpaceParams4;
|
|
float4 _LensFlareScreenSpaceParams5;
|
|
int _LensFlareScreenSpaceMipLevel;
|
|
|
|
static float4 fragment_uniform_buffer_0[145];
|
|
Texture2D<float4> _LensFlareScreenSpaceStreakTex;
|
|
SamplerState S0;
|
|
|
|
static float2 fragment_input_1;
|
|
static float4 fragment_output_0;
|
|
|
|
struct Fragment_Stage_Input
|
|
{
|
|
float2 fragment_input_1 : TEXCOORD; // TEXCOORD
|
|
};
|
|
|
|
struct Fragment_Stage_Output
|
|
{
|
|
float4 fragment_output_0 : SV_Target0;
|
|
};
|
|
|
|
void frag_main()
|
|
{
|
|
float fragment_unnamed_35 = floor(fragment_uniform_buffer_0[142u].z);
|
|
precise float fragment_unnamed_36 = fragment_unnamed_35 + fragment_unnamed_35;
|
|
precise float fragment_unnamed_37 = (-0.0f) - fragment_unnamed_36;
|
|
bool fragment_unnamed_40 = fragment_unnamed_36 >= fragment_unnamed_37;
|
|
precise float fragment_unnamed_49 = asfloat(fragment_unnamed_40 ? 1056964608u : 3204448256u) * fragment_unnamed_35;
|
|
precise float fragment_unnamed_51 = frac(fragment_unnamed_49) * asfloat(fragment_unnamed_40 ? 1073741824u : 3221225472u);
|
|
bool fragment_unnamed_52 = fragment_unnamed_51 == 0.0f;
|
|
float fragment_unnamed_57 = frac(fragment_uniform_buffer_0[142u].z);
|
|
precise float fragment_unnamed_58 = (-0.0f) - fragment_unnamed_57;
|
|
precise float fragment_unnamed_59 = fragment_unnamed_58 + 1.0f;
|
|
precise float fragment_unnamed_61 = (-0.0f) - fragment_unnamed_59;
|
|
precise float fragment_unnamed_67 = (fragment_unnamed_52 ? fragment_unnamed_57 : fragment_unnamed_61) * fragment_uniform_buffer_0[138u].y;
|
|
precise float fragment_unnamed_68 = (-0.0f) - fragment_unnamed_59;
|
|
precise float fragment_unnamed_69 = fragment_unnamed_68 + 1.0f;
|
|
precise float fragment_unnamed_70 = (-0.0f) - fragment_unnamed_59;
|
|
precise float fragment_unnamed_71 = (-0.0f) - fragment_unnamed_69;
|
|
precise float fragment_unnamed_76 = (fragment_unnamed_52 ? fragment_unnamed_70 : fragment_unnamed_71) * fragment_uniform_buffer_0[138u].x;
|
|
precise float fragment_unnamed_80 = fragment_unnamed_76 * fragment_uniform_buffer_0[142u].y;
|
|
precise float fragment_unnamed_81 = fragment_unnamed_67 * fragment_uniform_buffer_0[142u].y;
|
|
precise float fragment_unnamed_89 = float(int(asuint(fragment_uniform_buffer_0[144u]).x)) + 1.0f;
|
|
precise float fragment_unnamed_90 = fragment_unnamed_89 * fragment_unnamed_80;
|
|
precise float fragment_unnamed_91 = fragment_unnamed_89 * fragment_unnamed_81;
|
|
precise float fragment_unnamed_96 = fragment_unnamed_90 / fragment_uniform_buffer_0[143u].x;
|
|
precise float fragment_unnamed_97 = fragment_unnamed_91 / fragment_uniform_buffer_0[143u].x;
|
|
precise float fragment_unnamed_98 = (-0.0f) - fragment_unnamed_96;
|
|
precise float fragment_unnamed_108 = (-0.0f) - fragment_unnamed_97;
|
|
precise float fragment_unnamed_120 = (-0.0f) - fragment_uniform_buffer_0[123u].z;
|
|
precise float fragment_unnamed_122 = (-0.0f) - fragment_uniform_buffer_0[123u].w;
|
|
float fragment_unnamed_128 = mad(fragment_unnamed_120, 0.5f, fragment_uniform_buffer_0[28u].x);
|
|
float fragment_unnamed_130 = mad(fragment_unnamed_122, 0.5f, fragment_uniform_buffer_0[28u].y);
|
|
float4 fragment_unnamed_141 = _LensFlareScreenSpaceStreakTex.SampleBias(S0, float2(min(fragment_unnamed_128, clamp(mad(fragment_unnamed_98, 3.0f, fragment_input_1.x), 0.0f, 1.0f)), min(fragment_unnamed_130, clamp(mad(fragment_unnamed_108, 3.0f, fragment_input_1.y), 0.0f, 1.0f))), fragment_uniform_buffer_0[4u].x);
|
|
float4 fragment_unnamed_149 = _LensFlareScreenSpaceStreakTex.SampleBias(S0, float2(min(fragment_unnamed_128, clamp(mad(fragment_unnamed_98, 5.0f, fragment_input_1.x), 0.0f, 1.0f)), min(fragment_unnamed_130, clamp(mad(fragment_unnamed_108, 5.0f, fragment_input_1.y), 0.0f, 1.0f))), fragment_uniform_buffer_0[4u].x);
|
|
precise float fragment_unnamed_154 = fragment_unnamed_141.x * 0.16666667163372039794921875f;
|
|
precise float fragment_unnamed_156 = fragment_unnamed_141.y * 0.16666667163372039794921875f;
|
|
precise float fragment_unnamed_157 = fragment_unnamed_141.z * 0.16666667163372039794921875f;
|
|
precise float fragment_unnamed_162 = (-0.0f) - fragment_unnamed_96;
|
|
precise float fragment_unnamed_163 = (-0.0f) - fragment_unnamed_97;
|
|
precise float fragment_unnamed_168 = fragment_unnamed_162 + fragment_input_1.x;
|
|
precise float fragment_unnamed_169 = fragment_unnamed_163 + fragment_input_1.y;
|
|
float4 fragment_unnamed_177 = _LensFlareScreenSpaceStreakTex.SampleBias(S0, float2(min(fragment_unnamed_128, clamp(fragment_unnamed_168, 0.0f, 1.0f)), min(fragment_unnamed_130, clamp(fragment_unnamed_169, 0.0f, 1.0f))), fragment_uniform_buffer_0[4u].x);
|
|
precise float fragment_unnamed_196 = fragment_unnamed_96 + fragment_input_1.x;
|
|
precise float fragment_unnamed_197 = fragment_unnamed_97 + fragment_input_1.y;
|
|
float4 fragment_unnamed_215 = _LensFlareScreenSpaceStreakTex.SampleBias(S0, float2(min(fragment_unnamed_128, clamp(fragment_unnamed_196, 0.0f, 1.0f)), min(fragment_unnamed_130, clamp(fragment_unnamed_197, 0.0f, 1.0f))), fragment_uniform_buffer_0[4u].x);
|
|
float4 fragment_unnamed_226 = _LensFlareScreenSpaceStreakTex.SampleBias(S0, float2(min(fragment_unnamed_128, clamp(mad(fragment_unnamed_96, 3.0f, fragment_input_1.x), 0.0f, 1.0f)), min(fragment_unnamed_130, clamp(mad(fragment_unnamed_97, 3.0f, fragment_input_1.y), 0.0f, 1.0f))), fragment_uniform_buffer_0[4u].x);
|
|
float4 fragment_unnamed_234 = _LensFlareScreenSpaceStreakTex.SampleBias(S0, float2(min(fragment_unnamed_128, clamp(mad(fragment_unnamed_96, 5.0f, fragment_input_1.x), 0.0f, 1.0f)), min(fragment_unnamed_130, clamp(mad(fragment_unnamed_97, 5.0f, fragment_input_1.y), 0.0f, 1.0f))), fragment_uniform_buffer_0[4u].x);
|
|
fragment_output_0.x = mad(fragment_unnamed_234.x, 0.083333335816860198974609375f, mad(fragment_unnamed_226.x, 0.16666667163372039794921875f, mad(fragment_unnamed_215.x, 0.25f, mad(fragment_unnamed_177.x, 0.25f, mad(fragment_unnamed_149.x, 0.083333335816860198974609375f, fragment_unnamed_154)))));
|
|
fragment_output_0.y = mad(fragment_unnamed_234.y, 0.083333335816860198974609375f, mad(fragment_unnamed_226.y, 0.16666667163372039794921875f, mad(fragment_unnamed_215.y, 0.25f, mad(fragment_unnamed_177.y, 0.25f, mad(fragment_unnamed_149.y, 0.083333335816860198974609375f, fragment_unnamed_156)))));
|
|
fragment_output_0.z = mad(fragment_unnamed_234.z, 0.083333335816860198974609375f, mad(fragment_unnamed_226.z, 0.16666667163372039794921875f, mad(fragment_unnamed_215.z, 0.25f, mad(fragment_unnamed_177.z, 0.25f, mad(fragment_unnamed_149.z, 0.083333335816860198974609375f, fragment_unnamed_157)))));
|
|
fragment_output_0.w = 1.0f;
|
|
}
|
|
|
|
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
|
|
{
|
|
fragment_uniform_buffer_0[28] = float4(_RTHandleScale[0], _RTHandleScale[1], _RTHandleScale[2], _RTHandleScale[3]);
|
|
|
|
fragment_uniform_buffer_0[123] = float4(_ScreenSize[0], _ScreenSize[1], _ScreenSize[2], _ScreenSize[3]);
|
|
|
|
fragment_uniform_buffer_0[138] = float4(_LensFlareScreenSpaceStreakTex_TexelSize[0], _LensFlareScreenSpaceStreakTex_TexelSize[1], _LensFlareScreenSpaceStreakTex_TexelSize[2], _LensFlareScreenSpaceStreakTex_TexelSize[3]);
|
|
|
|
fragment_uniform_buffer_0[142] = float4(_LensFlareScreenSpaceParams4[0], _LensFlareScreenSpaceParams4[1], _LensFlareScreenSpaceParams4[2], _LensFlareScreenSpaceParams4[3]);
|
|
|
|
fragment_uniform_buffer_0[143] = float4(_LensFlareScreenSpaceParams5[0], _LensFlareScreenSpaceParams5[1], _LensFlareScreenSpaceParams5[2], _LensFlareScreenSpaceParams5[3]);
|
|
|
|
fragment_uniform_buffer_0[144] = float4(asfloat(_LensFlareScreenSpaceMipLevel), fragment_uniform_buffer_0[144][1], fragment_uniform_buffer_0[144][2], fragment_uniform_buffer_0[144][3]);
|
|
|
|
fragment_input_1 = stage_input.fragment_input_1;
|
|
frag_main();
|
|
Fragment_Stage_Output stage_output;
|
|
stage_output.fragment_output_0 = fragment_output_0;
|
|
return stage_output;
|
|
}
|
|
|
|
#endif // !STEREO_INSTANCING_ON
|
|
|
|
|
|
#ifdef STEREO_INSTANCING_ON
|
|
#define ANY_SHADER_VARIANT_ACTIVE
|
|
|
|
float4 _RTHandleScale;
|
|
float4 _ScreenSize;
|
|
float4 _LensFlareScreenSpaceStreakTex_TexelSize;
|
|
float4 _LensFlareScreenSpaceParams4;
|
|
float4 _LensFlareScreenSpaceParams5;
|
|
int _LensFlareScreenSpaceMipLevel;
|
|
|
|
static float4 fragment_uniform_buffer_0[114];
|
|
Texture2DArray<float4> _LensFlareScreenSpaceStreakTex;
|
|
SamplerState S0;
|
|
|
|
static uint gl_Layer;
|
|
static float2 fragment_input_1;
|
|
static float4 fragment_output_0;
|
|
|
|
struct Fragment_Stage_Input
|
|
{
|
|
float2 fragment_input_1 : TEXCOORD; // TEXCOORD
|
|
uint gl_Layer : SV_RenderTargetArrayIndex;
|
|
};
|
|
|
|
struct Fragment_Stage_Output
|
|
{
|
|
float4 fragment_output_0 : SV_Target0;
|
|
};
|
|
|
|
void frag_main()
|
|
{
|
|
float fragment_unnamed_37 = floor(fragment_uniform_buffer_0[111u].z);
|
|
precise float fragment_unnamed_38 = fragment_unnamed_37 + fragment_unnamed_37;
|
|
precise float fragment_unnamed_39 = (-0.0f) - fragment_unnamed_38;
|
|
bool fragment_unnamed_42 = fragment_unnamed_38 >= fragment_unnamed_39;
|
|
precise float fragment_unnamed_51 = asfloat(fragment_unnamed_42 ? 1056964608u : 3204448256u) * fragment_unnamed_37;
|
|
precise float fragment_unnamed_53 = frac(fragment_unnamed_51) * asfloat(fragment_unnamed_42 ? 1073741824u : 3221225472u);
|
|
bool fragment_unnamed_54 = fragment_unnamed_53 == 0.0f;
|
|
float fragment_unnamed_59 = frac(fragment_uniform_buffer_0[111u].z);
|
|
precise float fragment_unnamed_60 = (-0.0f) - fragment_unnamed_59;
|
|
precise float fragment_unnamed_61 = fragment_unnamed_60 + 1.0f;
|
|
precise float fragment_unnamed_63 = (-0.0f) - fragment_unnamed_61;
|
|
precise float fragment_unnamed_69 = (fragment_unnamed_54 ? fragment_unnamed_59 : fragment_unnamed_63) * fragment_uniform_buffer_0[107u].y;
|
|
precise float fragment_unnamed_70 = (-0.0f) - fragment_unnamed_61;
|
|
precise float fragment_unnamed_71 = fragment_unnamed_70 + 1.0f;
|
|
precise float fragment_unnamed_72 = (-0.0f) - fragment_unnamed_61;
|
|
precise float fragment_unnamed_73 = (-0.0f) - fragment_unnamed_71;
|
|
precise float fragment_unnamed_78 = (fragment_unnamed_54 ? fragment_unnamed_72 : fragment_unnamed_73) * fragment_uniform_buffer_0[107u].x;
|
|
precise float fragment_unnamed_82 = fragment_unnamed_78 * fragment_uniform_buffer_0[111u].y;
|
|
precise float fragment_unnamed_83 = fragment_unnamed_69 * fragment_uniform_buffer_0[111u].y;
|
|
precise float fragment_unnamed_91 = float(int(asuint(fragment_uniform_buffer_0[113u]).x)) + 1.0f;
|
|
precise float fragment_unnamed_92 = fragment_unnamed_91 * fragment_unnamed_82;
|
|
precise float fragment_unnamed_93 = fragment_unnamed_91 * fragment_unnamed_83;
|
|
precise float fragment_unnamed_98 = fragment_unnamed_92 / fragment_uniform_buffer_0[112u].x;
|
|
precise float fragment_unnamed_99 = fragment_unnamed_93 / fragment_uniform_buffer_0[112u].x;
|
|
precise float fragment_unnamed_100 = (-0.0f) - fragment_unnamed_98;
|
|
precise float fragment_unnamed_110 = (-0.0f) - fragment_unnamed_99;
|
|
precise float fragment_unnamed_122 = (-0.0f) - fragment_uniform_buffer_0[92u].z;
|
|
precise float fragment_unnamed_124 = (-0.0f) - fragment_uniform_buffer_0[92u].w;
|
|
float fragment_unnamed_130 = mad(fragment_unnamed_122, 0.5f, fragment_uniform_buffer_0[27u].x);
|
|
float fragment_unnamed_132 = mad(fragment_unnamed_124, 0.5f, fragment_uniform_buffer_0[27u].y);
|
|
float fragment_unnamed_138 = float(uint(gl_Layer));
|
|
float4 fragment_unnamed_145 = _LensFlareScreenSpaceStreakTex.SampleBias(S0, float3(min(fragment_unnamed_130, clamp(mad(fragment_unnamed_100, 5.0f, fragment_input_1.x), 0.0f, 1.0f)), min(fragment_unnamed_132, clamp(mad(fragment_unnamed_110, 5.0f, fragment_input_1.y), 0.0f, 1.0f)), fragment_unnamed_138), fragment_uniform_buffer_0[4u].x);
|
|
float4 fragment_unnamed_154 = _LensFlareScreenSpaceStreakTex.SampleBias(S0, float3(min(fragment_unnamed_130, clamp(mad(fragment_unnamed_100, 3.0f, fragment_input_1.x), 0.0f, 1.0f)), min(fragment_unnamed_132, clamp(mad(fragment_unnamed_110, 3.0f, fragment_input_1.y), 0.0f, 1.0f)), fragment_unnamed_138), fragment_uniform_buffer_0[4u].x);
|
|
precise float fragment_unnamed_159 = fragment_unnamed_154.x * 0.16666667163372039794921875f;
|
|
precise float fragment_unnamed_161 = fragment_unnamed_154.y * 0.16666667163372039794921875f;
|
|
precise float fragment_unnamed_162 = fragment_unnamed_154.z * 0.16666667163372039794921875f;
|
|
precise float fragment_unnamed_167 = (-0.0f) - fragment_unnamed_98;
|
|
precise float fragment_unnamed_168 = (-0.0f) - fragment_unnamed_99;
|
|
precise float fragment_unnamed_173 = fragment_unnamed_167 + fragment_input_1.x;
|
|
precise float fragment_unnamed_174 = fragment_unnamed_168 + fragment_input_1.y;
|
|
float4 fragment_unnamed_182 = _LensFlareScreenSpaceStreakTex.SampleBias(S0, float3(min(fragment_unnamed_130, clamp(fragment_unnamed_173, 0.0f, 1.0f)), min(fragment_unnamed_132, clamp(fragment_unnamed_174, 0.0f, 1.0f)), fragment_unnamed_138), fragment_uniform_buffer_0[4u].x);
|
|
precise float fragment_unnamed_201 = fragment_unnamed_98 + fragment_input_1.x;
|
|
precise float fragment_unnamed_202 = fragment_unnamed_99 + fragment_input_1.y;
|
|
float4 fragment_unnamed_216 = _LensFlareScreenSpaceStreakTex.SampleBias(S0, float3(min(fragment_unnamed_130, clamp(fragment_unnamed_201, 0.0f, 1.0f)), min(fragment_unnamed_132, clamp(fragment_unnamed_202, 0.0f, 1.0f)), fragment_unnamed_138), fragment_uniform_buffer_0[4u].x);
|
|
float4 fragment_unnamed_231 = _LensFlareScreenSpaceStreakTex.SampleBias(S0, float3(min(fragment_unnamed_130, clamp(mad(fragment_unnamed_98, 3.0f, fragment_input_1.x), 0.0f, 1.0f)), min(fragment_unnamed_132, clamp(mad(fragment_unnamed_99, 3.0f, fragment_input_1.y), 0.0f, 1.0f)), fragment_unnamed_138), fragment_uniform_buffer_0[4u].x);
|
|
float4 fragment_unnamed_239 = _LensFlareScreenSpaceStreakTex.SampleBias(S0, float3(min(fragment_unnamed_130, clamp(mad(fragment_unnamed_98, 5.0f, fragment_input_1.x), 0.0f, 1.0f)), min(fragment_unnamed_132, clamp(mad(fragment_unnamed_99, 5.0f, fragment_input_1.y), 0.0f, 1.0f)), fragment_unnamed_138), fragment_uniform_buffer_0[4u].x);
|
|
fragment_output_0.x = mad(fragment_unnamed_239.x, 0.083333335816860198974609375f, mad(fragment_unnamed_231.x, 0.16666667163372039794921875f, mad(fragment_unnamed_216.x, 0.25f, mad(fragment_unnamed_182.x, 0.25f, mad(fragment_unnamed_145.x, 0.083333335816860198974609375f, fragment_unnamed_159)))));
|
|
fragment_output_0.y = mad(fragment_unnamed_239.y, 0.083333335816860198974609375f, mad(fragment_unnamed_231.y, 0.16666667163372039794921875f, mad(fragment_unnamed_216.y, 0.25f, mad(fragment_unnamed_182.y, 0.25f, mad(fragment_unnamed_145.y, 0.083333335816860198974609375f, fragment_unnamed_161)))));
|
|
fragment_output_0.z = mad(fragment_unnamed_239.z, 0.083333335816860198974609375f, mad(fragment_unnamed_231.z, 0.16666667163372039794921875f, mad(fragment_unnamed_216.z, 0.25f, mad(fragment_unnamed_182.z, 0.25f, mad(fragment_unnamed_145.z, 0.083333335816860198974609375f, fragment_unnamed_162)))));
|
|
fragment_output_0.w = 1.0f;
|
|
}
|
|
|
|
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
|
|
{
|
|
fragment_uniform_buffer_0[27] = float4(_RTHandleScale[0], _RTHandleScale[1], _RTHandleScale[2], _RTHandleScale[3]);
|
|
|
|
fragment_uniform_buffer_0[92] = float4(_ScreenSize[0], _ScreenSize[1], _ScreenSize[2], _ScreenSize[3]);
|
|
|
|
fragment_uniform_buffer_0[107] = float4(_LensFlareScreenSpaceStreakTex_TexelSize[0], _LensFlareScreenSpaceStreakTex_TexelSize[1], _LensFlareScreenSpaceStreakTex_TexelSize[2], _LensFlareScreenSpaceStreakTex_TexelSize[3]);
|
|
|
|
fragment_uniform_buffer_0[111] = float4(_LensFlareScreenSpaceParams4[0], _LensFlareScreenSpaceParams4[1], _LensFlareScreenSpaceParams4[2], _LensFlareScreenSpaceParams4[3]);
|
|
|
|
fragment_uniform_buffer_0[112] = float4(_LensFlareScreenSpaceParams5[0], _LensFlareScreenSpaceParams5[1], _LensFlareScreenSpaceParams5[2], _LensFlareScreenSpaceParams5[3]);
|
|
|
|
fragment_uniform_buffer_0[113] = float4(asfloat(_LensFlareScreenSpaceMipLevel), fragment_uniform_buffer_0[113][1], fragment_uniform_buffer_0[113][2], fragment_uniform_buffer_0[113][3]);
|
|
|
|
gl_Layer = stage_input.gl_Layer;
|
|
fragment_input_1 = stage_input.fragment_input_1;
|
|
frag_main();
|
|
Fragment_Stage_Output stage_output;
|
|
stage_output.fragment_output_0 = fragment_output_0;
|
|
return stage_output;
|
|
}
|
|
|
|
#endif // STEREO_INSTANCING_ON
|
|
|
|
|
|
ENDHLSL
|
|
}
|
|
Pass
|
|
{
|
|
Name "LensFlareScreenSpace Upsample"
|
|
LOD 100
|
|
Tags { "QUEUE" = "Transparent" "RenderPipeline" = "UniversalPipeline" "RenderType" = "Transparent" }
|
|
ZTest Always
|
|
ZWrite Off
|
|
Cull Off
|
|
GpuProgramID 142197
|
|
|
|
HLSLPROGRAM
|
|
|
|
// https://docs.unity3d.com/Manual/SL-PragmaDirectives.html
|
|
#pragma vertex vert
|
|
#pragma fragment frag
|
|
#pragma target 4.0
|
|
#pragma multi_compile _ STEREO_INSTANCING_ON
|
|
|
|
|
|
#ifndef STEREO_INSTANCING_ON
|
|
#define ANY_SHADER_VARIANT_ACTIVE
|
|
|
|
static float4 gl_Position;
|
|
static int gl_VertexIndex;
|
|
static int gl_BaseVertexARB;
|
|
static float2 vertex_output_1;
|
|
|
|
struct Vertex_Stage_Input
|
|
{
|
|
uint gl_VertexIndex : SV_VertexID;
|
|
uint gl_BaseVertexARB : SV_StartVertexLocation;
|
|
};
|
|
|
|
struct Vertex_Stage_Output
|
|
{
|
|
float2 vertex_output_1 : TEXCOORD; // TEXCOORD
|
|
float4 gl_Position : SV_Position;
|
|
};
|
|
|
|
void vert_main()
|
|
{
|
|
uint vertex_unnamed_19 = (uint(gl_VertexIndex) - uint(gl_BaseVertexARB)) & 1u;
|
|
uint vertex_unnamed_24 = (uint(gl_VertexIndex) - uint(gl_BaseVertexARB)) >> 1u;
|
|
float vertex_unnamed_29 = float(vertex_unnamed_24);
|
|
precise float vertex_unnamed_32 = (-0.0f) - float((vertex_unnamed_19 + vertex_unnamed_24) & 1u);
|
|
precise float vertex_unnamed_34 = vertex_unnamed_32 + 1.0f;
|
|
precise float vertex_unnamed_36 = (-0.0f) - vertex_unnamed_34;
|
|
precise float vertex_unnamed_37 = vertex_unnamed_36 + 1.0f;
|
|
vertex_output_1.x = vertex_unnamed_29;
|
|
vertex_output_1.y = vertex_unnamed_37;
|
|
gl_Position.x = mad(vertex_unnamed_29, 2.0f, -1.0f);
|
|
gl_Position.y = mad(float((((-vertex_unnamed_19) + (-vertex_unnamed_24)) + 1u) & 1u), 2.0f, -1.0f);
|
|
gl_Position.z = 1.0f;
|
|
gl_Position.w = 1.0f;
|
|
}
|
|
|
|
Vertex_Stage_Output vert(Vertex_Stage_Input stage_input)
|
|
{
|
|
gl_VertexIndex = int(stage_input.gl_VertexIndex + stage_input.gl_BaseVertexARB);
|
|
gl_BaseVertexARB = stage_input.gl_BaseVertexARB;
|
|
vert_main();
|
|
Vertex_Stage_Output stage_output;
|
|
stage_output.gl_Position = gl_Position;
|
|
stage_output.vertex_output_1 = vertex_output_1;
|
|
return stage_output;
|
|
}
|
|
|
|
#endif // !STEREO_INSTANCING_ON
|
|
|
|
|
|
#ifdef STEREO_INSTANCING_ON
|
|
#define ANY_SHADER_VARIANT_ACTIVE
|
|
|
|
static float4 gl_Position;
|
|
static uint gl_Layer;
|
|
static int gl_VertexIndex;
|
|
static int gl_InstanceIndex;
|
|
static int gl_BaseVertexARB;
|
|
static int gl_BaseInstanceARB;
|
|
static float2 vertex_output_1;
|
|
|
|
struct Vertex_Stage_Input
|
|
{
|
|
uint gl_VertexIndex : SV_VertexID;
|
|
uint gl_InstanceIndex : SV_InstanceID;
|
|
uint gl_BaseVertexARB : SV_StartVertexLocation;
|
|
uint gl_BaseInstanceARB : SV_StartInstanceLocation;
|
|
};
|
|
|
|
struct Vertex_Stage_Output
|
|
{
|
|
float2 vertex_output_1 : TEXCOORD; // TEXCOORD
|
|
float4 gl_Position : SV_Position;
|
|
uint gl_Layer : SV_RenderTargetArrayIndex;
|
|
};
|
|
|
|
void vert_main()
|
|
{
|
|
uint vertex_unnamed_22 = (uint(gl_VertexIndex) - uint(gl_BaseVertexARB)) & 1u;
|
|
uint vertex_unnamed_27 = (uint(gl_VertexIndex) - uint(gl_BaseVertexARB)) >> 1u;
|
|
float vertex_unnamed_32 = float(vertex_unnamed_27);
|
|
precise float vertex_unnamed_35 = (-0.0f) - float((vertex_unnamed_22 + vertex_unnamed_27) & 1u);
|
|
precise float vertex_unnamed_37 = vertex_unnamed_35 + 1.0f;
|
|
precise float vertex_unnamed_39 = (-0.0f) - vertex_unnamed_37;
|
|
precise float vertex_unnamed_40 = vertex_unnamed_39 + 1.0f;
|
|
vertex_output_1.x = vertex_unnamed_32;
|
|
vertex_output_1.y = vertex_unnamed_40;
|
|
gl_Position.x = mad(vertex_unnamed_32, 2.0f, -1.0f);
|
|
gl_Position.y = mad(float((((-vertex_unnamed_22) + (-vertex_unnamed_27)) + 1u) & 1u), 2.0f, -1.0f);
|
|
gl_Position.z = 1.0f;
|
|
gl_Position.w = 1.0f;
|
|
gl_Layer = int((uint(gl_InstanceIndex) - uint(gl_BaseInstanceARB)) & 1u);
|
|
}
|
|
|
|
Vertex_Stage_Output vert(Vertex_Stage_Input stage_input)
|
|
{
|
|
gl_VertexIndex = int(stage_input.gl_VertexIndex + stage_input.gl_BaseVertexARB);
|
|
gl_InstanceIndex = int(stage_input.gl_InstanceIndex + stage_input.gl_BaseInstanceARB);
|
|
gl_BaseVertexARB = stage_input.gl_BaseVertexARB;
|
|
gl_BaseInstanceARB = stage_input.gl_BaseInstanceARB;
|
|
vert_main();
|
|
Vertex_Stage_Output stage_output;
|
|
stage_output.gl_Position = gl_Position;
|
|
stage_output.gl_Layer = gl_Layer;
|
|
stage_output.vertex_output_1 = vertex_output_1;
|
|
return stage_output;
|
|
}
|
|
|
|
#endif // STEREO_INSTANCING_ON
|
|
|
|
|
|
#ifndef STEREO_INSTANCING_ON
|
|
#define ANY_SHADER_VARIANT_ACTIVE
|
|
|
|
float4 _RTHandleScale;
|
|
float4 _ScreenSize;
|
|
float4 _LensFlareScreenSpaceStreakTex_TexelSize;
|
|
float4 _LensFlareScreenSpaceParams4;
|
|
float4 _LensFlareScreenSpaceParams5;
|
|
int _LensFlareScreenSpaceMipLevel;
|
|
|
|
static float4 fragment_uniform_buffer_0[145];
|
|
Texture2D<float4> _LensFlareScreenSpaceStreakTex;
|
|
SamplerState S0;
|
|
|
|
static float2 fragment_input_1;
|
|
static float4 fragment_output_0;
|
|
|
|
struct Fragment_Stage_Input
|
|
{
|
|
float2 fragment_input_1 : TEXCOORD; // TEXCOORD
|
|
};
|
|
|
|
struct Fragment_Stage_Output
|
|
{
|
|
float4 fragment_output_0 : SV_Target0;
|
|
};
|
|
|
|
void frag_main()
|
|
{
|
|
float fragment_unnamed_35 = floor(fragment_uniform_buffer_0[142u].z);
|
|
precise float fragment_unnamed_36 = fragment_unnamed_35 + fragment_unnamed_35;
|
|
precise float fragment_unnamed_37 = (-0.0f) - fragment_unnamed_36;
|
|
bool fragment_unnamed_40 = fragment_unnamed_36 >= fragment_unnamed_37;
|
|
precise float fragment_unnamed_49 = asfloat(fragment_unnamed_40 ? 1056964608u : 3204448256u) * fragment_unnamed_35;
|
|
precise float fragment_unnamed_51 = frac(fragment_unnamed_49) * asfloat(fragment_unnamed_40 ? 1073741824u : 3221225472u);
|
|
bool fragment_unnamed_52 = fragment_unnamed_51 == 0.0f;
|
|
float fragment_unnamed_57 = frac(fragment_uniform_buffer_0[142u].z);
|
|
precise float fragment_unnamed_58 = (-0.0f) - fragment_unnamed_57;
|
|
precise float fragment_unnamed_59 = fragment_unnamed_58 + 1.0f;
|
|
precise float fragment_unnamed_61 = (-0.0f) - fragment_unnamed_59;
|
|
precise float fragment_unnamed_67 = (fragment_unnamed_52 ? fragment_unnamed_57 : fragment_unnamed_61) * fragment_uniform_buffer_0[138u].y;
|
|
precise float fragment_unnamed_71 = fragment_unnamed_67 * fragment_uniform_buffer_0[142u].y;
|
|
precise float fragment_unnamed_72 = fragment_unnamed_71 * 1.5f;
|
|
precise float fragment_unnamed_74 = (-0.0f) - fragment_unnamed_59;
|
|
precise float fragment_unnamed_75 = fragment_unnamed_74 + 1.0f;
|
|
precise float fragment_unnamed_76 = (-0.0f) - fragment_unnamed_59;
|
|
precise float fragment_unnamed_77 = (-0.0f) - fragment_unnamed_75;
|
|
precise float fragment_unnamed_82 = (fragment_unnamed_52 ? fragment_unnamed_76 : fragment_unnamed_77) * fragment_uniform_buffer_0[138u].x;
|
|
precise float fragment_unnamed_86 = fragment_unnamed_82 * fragment_uniform_buffer_0[142u].y;
|
|
precise float fragment_unnamed_94 = float(int(asuint(fragment_uniform_buffer_0[144u]).x)) + 1.0f;
|
|
precise float fragment_unnamed_95 = fragment_unnamed_94 * fragment_unnamed_86;
|
|
precise float fragment_unnamed_96 = fragment_unnamed_94 * fragment_unnamed_72;
|
|
precise float fragment_unnamed_97 = fragment_unnamed_95 * 1.5f;
|
|
precise float fragment_unnamed_102 = fragment_unnamed_97 / fragment_uniform_buffer_0[143u].x;
|
|
precise float fragment_unnamed_103 = fragment_unnamed_96 / fragment_uniform_buffer_0[143u].x;
|
|
precise float fragment_unnamed_104 = (-0.0f) - fragment_unnamed_102;
|
|
precise float fragment_unnamed_105 = (-0.0f) - fragment_unnamed_103;
|
|
precise float fragment_unnamed_112 = fragment_unnamed_104 + fragment_input_1.x;
|
|
precise float fragment_unnamed_113 = fragment_unnamed_105 + fragment_input_1.y;
|
|
precise float fragment_unnamed_120 = fragment_unnamed_102 + fragment_input_1.x;
|
|
precise float fragment_unnamed_121 = fragment_unnamed_103 + fragment_input_1.y;
|
|
precise float fragment_unnamed_128 = (-0.0f) - fragment_uniform_buffer_0[123u].z;
|
|
precise float fragment_unnamed_130 = (-0.0f) - fragment_uniform_buffer_0[123u].w;
|
|
float fragment_unnamed_136 = mad(fragment_unnamed_128, 0.5f, fragment_uniform_buffer_0[28u].x);
|
|
float fragment_unnamed_138 = mad(fragment_unnamed_130, 0.5f, fragment_uniform_buffer_0[28u].y);
|
|
float4 fragment_unnamed_147 = _LensFlareScreenSpaceStreakTex.SampleBias(S0, float2(min(fragment_unnamed_136, clamp(fragment_unnamed_112, 0.0f, 1.0f)), min(fragment_unnamed_138, clamp(fragment_unnamed_113, 0.0f, 1.0f))), fragment_uniform_buffer_0[4u].x);
|
|
float4 fragment_unnamed_165 = _LensFlareScreenSpaceStreakTex.SampleBias(S0, float2(min(fragment_unnamed_136, clamp(fragment_unnamed_120, 0.0f, 1.0f)), min(fragment_unnamed_138, clamp(fragment_unnamed_121, 0.0f, 1.0f))), fragment_uniform_buffer_0[4u].x);
|
|
float4 fragment_unnamed_173 = _LensFlareScreenSpaceStreakTex.SampleBias(S0, float2(min(fragment_unnamed_136, clamp(fragment_input_1.x, 0.0f, 1.0f)), min(fragment_unnamed_138, clamp(fragment_input_1.y, 0.0f, 1.0f))), fragment_uniform_buffer_0[4u].x);
|
|
precise float fragment_unnamed_178 = fragment_unnamed_173.x * 0.5f;
|
|
precise float fragment_unnamed_179 = fragment_unnamed_173.y * 0.5f;
|
|
precise float fragment_unnamed_180 = fragment_unnamed_173.z * 0.5f;
|
|
fragment_output_0.x = mad(fragment_unnamed_165.x, 0.25f, mad(fragment_unnamed_147.x, 0.25f, fragment_unnamed_178));
|
|
fragment_output_0.y = mad(fragment_unnamed_165.y, 0.25f, mad(fragment_unnamed_147.y, 0.25f, fragment_unnamed_179));
|
|
fragment_output_0.z = mad(fragment_unnamed_165.z, 0.25f, mad(fragment_unnamed_147.z, 0.25f, fragment_unnamed_180));
|
|
fragment_output_0.w = 1.0f;
|
|
}
|
|
|
|
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
|
|
{
|
|
fragment_uniform_buffer_0[28] = float4(_RTHandleScale[0], _RTHandleScale[1], _RTHandleScale[2], _RTHandleScale[3]);
|
|
|
|
fragment_uniform_buffer_0[123] = float4(_ScreenSize[0], _ScreenSize[1], _ScreenSize[2], _ScreenSize[3]);
|
|
|
|
fragment_uniform_buffer_0[138] = float4(_LensFlareScreenSpaceStreakTex_TexelSize[0], _LensFlareScreenSpaceStreakTex_TexelSize[1], _LensFlareScreenSpaceStreakTex_TexelSize[2], _LensFlareScreenSpaceStreakTex_TexelSize[3]);
|
|
|
|
fragment_uniform_buffer_0[142] = float4(_LensFlareScreenSpaceParams4[0], _LensFlareScreenSpaceParams4[1], _LensFlareScreenSpaceParams4[2], _LensFlareScreenSpaceParams4[3]);
|
|
|
|
fragment_uniform_buffer_0[143] = float4(_LensFlareScreenSpaceParams5[0], _LensFlareScreenSpaceParams5[1], _LensFlareScreenSpaceParams5[2], _LensFlareScreenSpaceParams5[3]);
|
|
|
|
fragment_uniform_buffer_0[144] = float4(asfloat(_LensFlareScreenSpaceMipLevel), fragment_uniform_buffer_0[144][1], fragment_uniform_buffer_0[144][2], fragment_uniform_buffer_0[144][3]);
|
|
|
|
fragment_input_1 = stage_input.fragment_input_1;
|
|
frag_main();
|
|
Fragment_Stage_Output stage_output;
|
|
stage_output.fragment_output_0 = fragment_output_0;
|
|
return stage_output;
|
|
}
|
|
|
|
#endif // !STEREO_INSTANCING_ON
|
|
|
|
|
|
#ifdef STEREO_INSTANCING_ON
|
|
#define ANY_SHADER_VARIANT_ACTIVE
|
|
|
|
float4 _RTHandleScale;
|
|
float4 _ScreenSize;
|
|
float4 _LensFlareScreenSpaceStreakTex_TexelSize;
|
|
float4 _LensFlareScreenSpaceParams4;
|
|
float4 _LensFlareScreenSpaceParams5;
|
|
int _LensFlareScreenSpaceMipLevel;
|
|
|
|
static float4 fragment_uniform_buffer_0[114];
|
|
Texture2DArray<float4> _LensFlareScreenSpaceStreakTex;
|
|
SamplerState S0;
|
|
|
|
static uint gl_Layer;
|
|
static float2 fragment_input_1;
|
|
static float4 fragment_output_0;
|
|
|
|
struct Fragment_Stage_Input
|
|
{
|
|
float2 fragment_input_1 : TEXCOORD; // TEXCOORD
|
|
uint gl_Layer : SV_RenderTargetArrayIndex;
|
|
};
|
|
|
|
struct Fragment_Stage_Output
|
|
{
|
|
float4 fragment_output_0 : SV_Target0;
|
|
};
|
|
|
|
void frag_main()
|
|
{
|
|
float fragment_unnamed_37 = floor(fragment_uniform_buffer_0[111u].z);
|
|
precise float fragment_unnamed_38 = fragment_unnamed_37 + fragment_unnamed_37;
|
|
precise float fragment_unnamed_39 = (-0.0f) - fragment_unnamed_38;
|
|
bool fragment_unnamed_42 = fragment_unnamed_38 >= fragment_unnamed_39;
|
|
precise float fragment_unnamed_51 = asfloat(fragment_unnamed_42 ? 1056964608u : 3204448256u) * fragment_unnamed_37;
|
|
precise float fragment_unnamed_53 = frac(fragment_unnamed_51) * asfloat(fragment_unnamed_42 ? 1073741824u : 3221225472u);
|
|
bool fragment_unnamed_54 = fragment_unnamed_53 == 0.0f;
|
|
float fragment_unnamed_59 = frac(fragment_uniform_buffer_0[111u].z);
|
|
precise float fragment_unnamed_60 = (-0.0f) - fragment_unnamed_59;
|
|
precise float fragment_unnamed_61 = fragment_unnamed_60 + 1.0f;
|
|
precise float fragment_unnamed_63 = (-0.0f) - fragment_unnamed_61;
|
|
precise float fragment_unnamed_69 = (fragment_unnamed_54 ? fragment_unnamed_59 : fragment_unnamed_63) * fragment_uniform_buffer_0[107u].y;
|
|
precise float fragment_unnamed_73 = fragment_unnamed_69 * fragment_uniform_buffer_0[111u].y;
|
|
precise float fragment_unnamed_74 = fragment_unnamed_73 * 1.5f;
|
|
precise float fragment_unnamed_76 = (-0.0f) - fragment_unnamed_61;
|
|
precise float fragment_unnamed_77 = fragment_unnamed_76 + 1.0f;
|
|
precise float fragment_unnamed_78 = (-0.0f) - fragment_unnamed_61;
|
|
precise float fragment_unnamed_79 = (-0.0f) - fragment_unnamed_77;
|
|
precise float fragment_unnamed_84 = (fragment_unnamed_54 ? fragment_unnamed_78 : fragment_unnamed_79) * fragment_uniform_buffer_0[107u].x;
|
|
precise float fragment_unnamed_88 = fragment_unnamed_84 * fragment_uniform_buffer_0[111u].y;
|
|
precise float fragment_unnamed_96 = float(int(asuint(fragment_uniform_buffer_0[113u]).x)) + 1.0f;
|
|
precise float fragment_unnamed_97 = fragment_unnamed_96 * fragment_unnamed_88;
|
|
precise float fragment_unnamed_98 = fragment_unnamed_96 * fragment_unnamed_74;
|
|
precise float fragment_unnamed_99 = fragment_unnamed_97 * 1.5f;
|
|
precise float fragment_unnamed_104 = fragment_unnamed_99 / fragment_uniform_buffer_0[112u].x;
|
|
precise float fragment_unnamed_105 = fragment_unnamed_98 / fragment_uniform_buffer_0[112u].x;
|
|
precise float fragment_unnamed_106 = (-0.0f) - fragment_unnamed_104;
|
|
precise float fragment_unnamed_107 = (-0.0f) - fragment_unnamed_105;
|
|
precise float fragment_unnamed_114 = fragment_unnamed_106 + fragment_input_1.x;
|
|
precise float fragment_unnamed_115 = fragment_unnamed_107 + fragment_input_1.y;
|
|
precise float fragment_unnamed_122 = fragment_unnamed_104 + fragment_input_1.x;
|
|
precise float fragment_unnamed_123 = fragment_unnamed_105 + fragment_input_1.y;
|
|
precise float fragment_unnamed_130 = (-0.0f) - fragment_uniform_buffer_0[92u].z;
|
|
precise float fragment_unnamed_132 = (-0.0f) - fragment_uniform_buffer_0[92u].w;
|
|
float fragment_unnamed_138 = mad(fragment_unnamed_130, 0.5f, fragment_uniform_buffer_0[27u].x);
|
|
float fragment_unnamed_140 = mad(fragment_unnamed_132, 0.5f, fragment_uniform_buffer_0[27u].y);
|
|
float fragment_unnamed_144 = float(uint(gl_Layer));
|
|
float4 fragment_unnamed_151 = _LensFlareScreenSpaceStreakTex.SampleBias(S0, float3(min(fragment_unnamed_138, clamp(fragment_unnamed_114, 0.0f, 1.0f)), min(fragment_unnamed_140, clamp(fragment_unnamed_115, 0.0f, 1.0f)), fragment_unnamed_144), fragment_uniform_buffer_0[4u].x);
|
|
float4 fragment_unnamed_170 = _LensFlareScreenSpaceStreakTex.SampleBias(S0, float3(min(fragment_unnamed_138, clamp(fragment_input_1.x, 0.0f, 1.0f)), min(fragment_unnamed_140, clamp(fragment_input_1.y, 0.0f, 1.0f)), fragment_unnamed_144), fragment_uniform_buffer_0[4u].x);
|
|
float4 fragment_unnamed_178 = _LensFlareScreenSpaceStreakTex.SampleBias(S0, float3(min(fragment_unnamed_138, clamp(fragment_unnamed_122, 0.0f, 1.0f)), min(fragment_unnamed_140, clamp(fragment_unnamed_123, 0.0f, 1.0f)), fragment_unnamed_144), fragment_uniform_buffer_0[4u].x);
|
|
precise float fragment_unnamed_183 = fragment_unnamed_170.x * 0.5f;
|
|
precise float fragment_unnamed_184 = fragment_unnamed_170.y * 0.5f;
|
|
precise float fragment_unnamed_185 = fragment_unnamed_170.z * 0.5f;
|
|
fragment_output_0.x = mad(fragment_unnamed_178.x, 0.25f, mad(fragment_unnamed_151.x, 0.25f, fragment_unnamed_183));
|
|
fragment_output_0.y = mad(fragment_unnamed_178.y, 0.25f, mad(fragment_unnamed_151.y, 0.25f, fragment_unnamed_184));
|
|
fragment_output_0.z = mad(fragment_unnamed_178.z, 0.25f, mad(fragment_unnamed_151.z, 0.25f, fragment_unnamed_185));
|
|
fragment_output_0.w = 1.0f;
|
|
}
|
|
|
|
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
|
|
{
|
|
fragment_uniform_buffer_0[27] = float4(_RTHandleScale[0], _RTHandleScale[1], _RTHandleScale[2], _RTHandleScale[3]);
|
|
|
|
fragment_uniform_buffer_0[92] = float4(_ScreenSize[0], _ScreenSize[1], _ScreenSize[2], _ScreenSize[3]);
|
|
|
|
fragment_uniform_buffer_0[107] = float4(_LensFlareScreenSpaceStreakTex_TexelSize[0], _LensFlareScreenSpaceStreakTex_TexelSize[1], _LensFlareScreenSpaceStreakTex_TexelSize[2], _LensFlareScreenSpaceStreakTex_TexelSize[3]);
|
|
|
|
fragment_uniform_buffer_0[111] = float4(_LensFlareScreenSpaceParams4[0], _LensFlareScreenSpaceParams4[1], _LensFlareScreenSpaceParams4[2], _LensFlareScreenSpaceParams4[3]);
|
|
|
|
fragment_uniform_buffer_0[112] = float4(_LensFlareScreenSpaceParams5[0], _LensFlareScreenSpaceParams5[1], _LensFlareScreenSpaceParams5[2], _LensFlareScreenSpaceParams5[3]);
|
|
|
|
fragment_uniform_buffer_0[113] = float4(asfloat(_LensFlareScreenSpaceMipLevel), fragment_uniform_buffer_0[113][1], fragment_uniform_buffer_0[113][2], fragment_uniform_buffer_0[113][3]);
|
|
|
|
gl_Layer = stage_input.gl_Layer;
|
|
fragment_input_1 = stage_input.fragment_input_1;
|
|
frag_main();
|
|
Fragment_Stage_Output stage_output;
|
|
stage_output.fragment_output_0 = fragment_output_0;
|
|
return stage_output;
|
|
}
|
|
|
|
#endif // STEREO_INSTANCING_ON
|
|
|
|
|
|
ENDHLSL
|
|
}
|
|
Pass
|
|
{
|
|
Name "LensFlareScreenSpace Composition"
|
|
LOD 100
|
|
Tags { "QUEUE" = "Transparent" "RenderPipeline" = "UniversalPipeline" "RenderType" = "Transparent" }
|
|
ZTest Always
|
|
ZWrite Off
|
|
Cull Off
|
|
GpuProgramID 223373
|
|
|
|
HLSLPROGRAM
|
|
|
|
// https://docs.unity3d.com/Manual/SL-PragmaDirectives.html
|
|
#pragma vertex vert
|
|
#pragma fragment frag
|
|
#pragma target 4.0
|
|
#pragma multi_compile _ STEREO_INSTANCING_ON
|
|
|
|
|
|
#ifndef STEREO_INSTANCING_ON
|
|
#define ANY_SHADER_VARIANT_ACTIVE
|
|
|
|
static float4 gl_Position;
|
|
static int gl_VertexIndex;
|
|
static int gl_BaseVertexARB;
|
|
static float2 vertex_output_1;
|
|
|
|
struct Vertex_Stage_Input
|
|
{
|
|
uint gl_VertexIndex : SV_VertexID;
|
|
uint gl_BaseVertexARB : SV_StartVertexLocation;
|
|
};
|
|
|
|
struct Vertex_Stage_Output
|
|
{
|
|
float2 vertex_output_1 : TEXCOORD; // TEXCOORD
|
|
float4 gl_Position : SV_Position;
|
|
};
|
|
|
|
void vert_main()
|
|
{
|
|
uint vertex_unnamed_19 = (uint(gl_VertexIndex) - uint(gl_BaseVertexARB)) & 1u;
|
|
uint vertex_unnamed_24 = (uint(gl_VertexIndex) - uint(gl_BaseVertexARB)) >> 1u;
|
|
float vertex_unnamed_29 = float(vertex_unnamed_24);
|
|
precise float vertex_unnamed_32 = (-0.0f) - float((vertex_unnamed_19 + vertex_unnamed_24) & 1u);
|
|
precise float vertex_unnamed_34 = vertex_unnamed_32 + 1.0f;
|
|
precise float vertex_unnamed_36 = (-0.0f) - vertex_unnamed_34;
|
|
precise float vertex_unnamed_37 = vertex_unnamed_36 + 1.0f;
|
|
vertex_output_1.x = vertex_unnamed_29;
|
|
vertex_output_1.y = vertex_unnamed_37;
|
|
gl_Position.x = mad(vertex_unnamed_29, 2.0f, -1.0f);
|
|
gl_Position.y = mad(float((((-vertex_unnamed_19) + (-vertex_unnamed_24)) + 1u) & 1u), 2.0f, -1.0f);
|
|
gl_Position.z = 1.0f;
|
|
gl_Position.w = 1.0f;
|
|
}
|
|
|
|
Vertex_Stage_Output vert(Vertex_Stage_Input stage_input)
|
|
{
|
|
gl_VertexIndex = int(stage_input.gl_VertexIndex + stage_input.gl_BaseVertexARB);
|
|
gl_BaseVertexARB = stage_input.gl_BaseVertexARB;
|
|
vert_main();
|
|
Vertex_Stage_Output stage_output;
|
|
stage_output.gl_Position = gl_Position;
|
|
stage_output.vertex_output_1 = vertex_output_1;
|
|
return stage_output;
|
|
}
|
|
|
|
#endif // !STEREO_INSTANCING_ON
|
|
|
|
|
|
#ifdef STEREO_INSTANCING_ON
|
|
#define ANY_SHADER_VARIANT_ACTIVE
|
|
|
|
static float4 gl_Position;
|
|
static uint gl_Layer;
|
|
static int gl_VertexIndex;
|
|
static int gl_InstanceIndex;
|
|
static int gl_BaseVertexARB;
|
|
static int gl_BaseInstanceARB;
|
|
static float2 vertex_output_1;
|
|
|
|
struct Vertex_Stage_Input
|
|
{
|
|
uint gl_VertexIndex : SV_VertexID;
|
|
uint gl_InstanceIndex : SV_InstanceID;
|
|
uint gl_BaseVertexARB : SV_StartVertexLocation;
|
|
uint gl_BaseInstanceARB : SV_StartInstanceLocation;
|
|
};
|
|
|
|
struct Vertex_Stage_Output
|
|
{
|
|
float2 vertex_output_1 : TEXCOORD; // TEXCOORD
|
|
float4 gl_Position : SV_Position;
|
|
uint gl_Layer : SV_RenderTargetArrayIndex;
|
|
};
|
|
|
|
void vert_main()
|
|
{
|
|
uint vertex_unnamed_22 = (uint(gl_VertexIndex) - uint(gl_BaseVertexARB)) & 1u;
|
|
uint vertex_unnamed_27 = (uint(gl_VertexIndex) - uint(gl_BaseVertexARB)) >> 1u;
|
|
float vertex_unnamed_32 = float(vertex_unnamed_27);
|
|
precise float vertex_unnamed_35 = (-0.0f) - float((vertex_unnamed_22 + vertex_unnamed_27) & 1u);
|
|
precise float vertex_unnamed_37 = vertex_unnamed_35 + 1.0f;
|
|
precise float vertex_unnamed_39 = (-0.0f) - vertex_unnamed_37;
|
|
precise float vertex_unnamed_40 = vertex_unnamed_39 + 1.0f;
|
|
vertex_output_1.x = vertex_unnamed_32;
|
|
vertex_output_1.y = vertex_unnamed_40;
|
|
gl_Position.x = mad(vertex_unnamed_32, 2.0f, -1.0f);
|
|
gl_Position.y = mad(float((((-vertex_unnamed_22) + (-vertex_unnamed_27)) + 1u) & 1u), 2.0f, -1.0f);
|
|
gl_Position.z = 1.0f;
|
|
gl_Position.w = 1.0f;
|
|
gl_Layer = int((uint(gl_InstanceIndex) - uint(gl_BaseInstanceARB)) & 1u);
|
|
}
|
|
|
|
Vertex_Stage_Output vert(Vertex_Stage_Input stage_input)
|
|
{
|
|
gl_VertexIndex = int(stage_input.gl_VertexIndex + stage_input.gl_BaseVertexARB);
|
|
gl_InstanceIndex = int(stage_input.gl_InstanceIndex + stage_input.gl_BaseInstanceARB);
|
|
gl_BaseVertexARB = stage_input.gl_BaseVertexARB;
|
|
gl_BaseInstanceARB = stage_input.gl_BaseInstanceARB;
|
|
vert_main();
|
|
Vertex_Stage_Output stage_output;
|
|
stage_output.gl_Position = gl_Position;
|
|
stage_output.gl_Layer = gl_Layer;
|
|
stage_output.vertex_output_1 = vertex_output_1;
|
|
return stage_output;
|
|
}
|
|
|
|
#endif // STEREO_INSTANCING_ON
|
|
|
|
|
|
#ifndef STEREO_INSTANCING_ON
|
|
#define ANY_SHADER_VARIANT_ACTIVE
|
|
|
|
float4 _RTHandleScale;
|
|
float4 _ScreenSize;
|
|
float4 _LensFlareScreenSpaceBloomMipTexture_TexelSize;
|
|
float4 _LensFlareScreenSpaceParams1;
|
|
float4 _LensFlareScreenSpaceParams2;
|
|
float4 _LensFlareScreenSpaceParams3;
|
|
float4 _LensFlareScreenSpaceParams4;
|
|
float4 _LensFlareScreenSpaceParams5;
|
|
float3 _LensFlareScreenSpaceTintColor;
|
|
|
|
static float4 fragment_uniform_buffer_0[145];
|
|
Texture2D<float4> _LensFlareScreenSpaceStreakTex;
|
|
Texture2D<float4> _LensFlareScreenSpaceBloomMipTexture;
|
|
SamplerState S0;
|
|
|
|
static float2 fragment_input_1;
|
|
static float4 fragment_output_0;
|
|
|
|
struct Fragment_Stage_Input
|
|
{
|
|
float2 fragment_input_1 : TEXCOORD; // TEXCOORD
|
|
};
|
|
|
|
struct Fragment_Stage_Output
|
|
{
|
|
float4 fragment_output_0 : SV_Target0;
|
|
};
|
|
|
|
void frag_main()
|
|
{
|
|
float fragment_unnamed_173;
|
|
float fragment_unnamed_175;
|
|
float fragment_unnamed_177;
|
|
if (0.0f < fragment_uniform_buffer_0[142u].x)
|
|
{
|
|
float fragment_unnamed_184;
|
|
float fragment_unnamed_185;
|
|
float fragment_unnamed_186;
|
|
if (0.0f < fragment_uniform_buffer_0[141u].z)
|
|
{
|
|
float fragment_unnamed_58 = mad(fragment_input_1.x, 2.0f, -1.0f);
|
|
float fragment_unnamed_59 = mad(fragment_input_1.y, 2.0f, -1.0f);
|
|
float fragment_unnamed_60 = dot(float2(fragment_unnamed_58, fragment_unnamed_59), float2(fragment_unnamed_58, fragment_unnamed_59));
|
|
precise float fragment_unnamed_63 = mad(fragment_input_1.x, 2.0f, -1.0f) * fragment_unnamed_60;
|
|
precise float fragment_unnamed_64 = mad(fragment_input_1.y, 2.0f, -1.0f) * fragment_unnamed_60;
|
|
precise float fragment_unnamed_65 = fragment_unnamed_58 * fragment_unnamed_60;
|
|
precise float fragment_unnamed_66 = fragment_unnamed_59 * fragment_unnamed_60;
|
|
precise float fragment_unnamed_70 = fragment_unnamed_63 * fragment_uniform_buffer_0[141u].z;
|
|
precise float fragment_unnamed_71 = fragment_unnamed_64 * fragment_uniform_buffer_0[141u].z;
|
|
precise float fragment_unnamed_72 = fragment_unnamed_65 * fragment_uniform_buffer_0[141u].z;
|
|
precise float fragment_unnamed_73 = fragment_unnamed_66 * fragment_uniform_buffer_0[141u].z;
|
|
precise float fragment_unnamed_78 = (-0.0f) - fragment_uniform_buffer_0[123u].z;
|
|
precise float fragment_unnamed_81 = (-0.0f) - fragment_uniform_buffer_0[123u].w;
|
|
float fragment_unnamed_86 = mad(fragment_unnamed_78, 0.5f, 1.0f);
|
|
float fragment_unnamed_87 = mad(fragment_unnamed_81, 0.5f, 1.0f);
|
|
precise float fragment_unnamed_99 = min(fragment_unnamed_86, fragment_input_1.x) * fragment_uniform_buffer_0[28u].x;
|
|
precise float fragment_unnamed_100 = min(fragment_unnamed_87, fragment_input_1.y) * fragment_uniform_buffer_0[28u].y;
|
|
precise float fragment_unnamed_128 = min(mad(fragment_unnamed_78, 0.5f, 1.0f), mad(fragment_unnamed_70, -0.3333333432674407958984375f, fragment_input_1.x)) * fragment_uniform_buffer_0[28u].x;
|
|
precise float fragment_unnamed_129 = min(mad(fragment_unnamed_81, 0.5f, 1.0f), mad(fragment_unnamed_71, -0.3333333432674407958984375f, fragment_input_1.y)) * fragment_uniform_buffer_0[28u].y;
|
|
precise float fragment_unnamed_130 = min(fragment_unnamed_86, mad(fragment_unnamed_72, -0.666666686534881591796875f, fragment_input_1.x)) * fragment_uniform_buffer_0[28u].x;
|
|
precise float fragment_unnamed_131 = min(fragment_unnamed_87, mad(fragment_unnamed_73, -0.666666686534881591796875f, fragment_input_1.y)) * fragment_uniform_buffer_0[28u].y;
|
|
fragment_unnamed_184 = _LensFlareScreenSpaceStreakTex.SampleBias(S0, float2(fragment_unnamed_130, fragment_unnamed_131), fragment_uniform_buffer_0[4u].x).z;
|
|
fragment_unnamed_185 = _LensFlareScreenSpaceStreakTex.SampleBias(S0, float2(fragment_unnamed_128, fragment_unnamed_129), fragment_uniform_buffer_0[4u].x).y;
|
|
fragment_unnamed_186 = _LensFlareScreenSpaceStreakTex.SampleBias(S0, float2(fragment_unnamed_99, fragment_unnamed_100), fragment_uniform_buffer_0[4u].x).x;
|
|
}
|
|
else
|
|
{
|
|
precise float fragment_unnamed_147 = (-0.0f) - fragment_uniform_buffer_0[123u].z;
|
|
precise float fragment_unnamed_149 = (-0.0f) - fragment_uniform_buffer_0[123u].w;
|
|
precise float fragment_unnamed_162 = min(mad(fragment_unnamed_147, 0.5f, 1.0f), fragment_input_1.x) * fragment_uniform_buffer_0[28u].x;
|
|
precise float fragment_unnamed_163 = min(mad(fragment_unnamed_149, 0.5f, 1.0f), fragment_input_1.y) * fragment_uniform_buffer_0[28u].y;
|
|
float4 fragment_unnamed_168 = _LensFlareScreenSpaceStreakTex.SampleBias(S0, float2(fragment_unnamed_162, fragment_unnamed_163), fragment_uniform_buffer_0[4u].x);
|
|
fragment_unnamed_184 = fragment_unnamed_168.z;
|
|
fragment_unnamed_185 = fragment_unnamed_168.y;
|
|
fragment_unnamed_186 = fragment_unnamed_168.x;
|
|
}
|
|
precise float fragment_unnamed_193 = fragment_unnamed_186 * fragment_uniform_buffer_0[144u].y;
|
|
precise float fragment_unnamed_194 = fragment_unnamed_185 * fragment_uniform_buffer_0[144u].z;
|
|
precise float fragment_unnamed_195 = fragment_unnamed_184 * fragment_uniform_buffer_0[144u].w;
|
|
precise float fragment_unnamed_178 = fragment_unnamed_193 * fragment_uniform_buffer_0[142u].x;
|
|
precise float fragment_unnamed_176 = fragment_unnamed_194 * fragment_uniform_buffer_0[142u].x;
|
|
precise float fragment_unnamed_174 = fragment_unnamed_195 * fragment_uniform_buffer_0[142u].x;
|
|
fragment_unnamed_173 = fragment_unnamed_174;
|
|
fragment_unnamed_175 = fragment_unnamed_176;
|
|
fragment_unnamed_177 = fragment_unnamed_178;
|
|
}
|
|
else
|
|
{
|
|
fragment_unnamed_173 = asfloat(0u);
|
|
fragment_unnamed_175 = asfloat(0u);
|
|
fragment_unnamed_177 = asfloat(0u);
|
|
}
|
|
float fragment_unnamed_328;
|
|
float fragment_unnamed_330;
|
|
float fragment_unnamed_332;
|
|
if (0.0f < fragment_uniform_buffer_0[139u].x)
|
|
{
|
|
precise float fragment_unnamed_203 = fragment_input_1.x + (-0.5f);
|
|
precise float fragment_unnamed_205 = fragment_input_1.y + (-0.5f);
|
|
float fragment_unnamed_212 = mad(fragment_input_1.x, 2.0f, -1.0f);
|
|
float fragment_unnamed_213 = mad(fragment_input_1.y, 2.0f, -1.0f);
|
|
float fragment_unnamed_216 = max(abs(mad(fragment_input_1.x, 2.0f, -1.0f)), 5.9604644775390625e-08f);
|
|
float fragment_unnamed_218 = max(abs(mad(fragment_input_1.y, 2.0f, -1.0f)), 5.9604644775390625e-08f);
|
|
precise float fragment_unnamed_219 = fragment_unnamed_216 * fragment_unnamed_216;
|
|
precise float fragment_unnamed_220 = fragment_unnamed_218 * fragment_unnamed_218;
|
|
float fragment_unnamed_221 = min(fragment_unnamed_219, 1.0f);
|
|
precise float fragment_unnamed_223 = min(fragment_unnamed_220, 1.0f) + fragment_unnamed_221;
|
|
float fragment_unnamed_224 = max(fragment_unnamed_223, 5.9604644775390625e-08f);
|
|
precise float fragment_unnamed_225 = fragment_unnamed_224 * fragment_unnamed_224;
|
|
precise float fragment_unnamed_227 = min(fragment_unnamed_225, 1.0f) + (-1.0f);
|
|
float fragment_unnamed_232 = mad(fragment_uniform_buffer_0[140u].x, fragment_unnamed_227, 1.0f);
|
|
float fragment_unnamed_238 = log2(max(abs(fragment_uniform_buffer_0[141u].y), 5.9604644775390625e-08f));
|
|
bool fragment_unnamed_242 = 0.0f < fragment_uniform_buffer_0[141u].z;
|
|
float fragment_unnamed_243 = dot(float2(fragment_unnamed_212, fragment_unnamed_213), float2(fragment_unnamed_212, fragment_unnamed_213));
|
|
precise float fragment_unnamed_246 = fragment_unnamed_243 * fragment_unnamed_212;
|
|
precise float fragment_unnamed_247 = fragment_unnamed_243 * fragment_unnamed_213;
|
|
precise float fragment_unnamed_248 = fragment_unnamed_243 * fragment_unnamed_212;
|
|
precise float fragment_unnamed_249 = fragment_unnamed_243 * fragment_unnamed_213;
|
|
precise float fragment_unnamed_253 = fragment_unnamed_246 * fragment_uniform_buffer_0[141u].z;
|
|
precise float fragment_unnamed_254 = fragment_unnamed_247 * fragment_uniform_buffer_0[141u].z;
|
|
precise float fragment_unnamed_255 = fragment_unnamed_248 * fragment_uniform_buffer_0[141u].z;
|
|
precise float fragment_unnamed_256 = fragment_unnamed_249 * fragment_uniform_buffer_0[141u].z;
|
|
bool fragment_unnamed_262 = 0.0f < fragment_uniform_buffer_0[139u].z;
|
|
bool fragment_unnamed_263 = 0.0f < fragment_uniform_buffer_0[139u].y;
|
|
bool fragment_unnamed_264 = 0.0f < fragment_uniform_buffer_0[139u].w;
|
|
precise float fragment_unnamed_269 = (-0.0f) - fragment_uniform_buffer_0[137u].x;
|
|
precise float fragment_unnamed_271 = (-0.0f) - fragment_uniform_buffer_0[137u].y;
|
|
float fragment_unnamed_272 = mad(fragment_unnamed_269, 0.5f, 1.0f);
|
|
float fragment_unnamed_273 = mad(fragment_unnamed_271, 0.5f, 1.0f);
|
|
precise float fragment_unnamed_277 = (-0.0f) - fragment_uniform_buffer_0[123u].z;
|
|
precise float fragment_unnamed_279 = (-0.0f) - fragment_uniform_buffer_0[123u].w;
|
|
float fragment_unnamed_280 = mad(fragment_unnamed_277, 0.5f, 1.0f);
|
|
float fragment_unnamed_281 = mad(fragment_unnamed_279, 0.5f, 1.0f);
|
|
precise float fragment_unnamed_287 = fragment_uniform_buffer_0[139u].z * 0.100000001490116119384765625f;
|
|
precise float fragment_unnamed_289 = fragment_uniform_buffer_0[139u].y * 0.100000001490116119384765625f;
|
|
precise float fragment_unnamed_290 = fragment_uniform_buffer_0[139u].w * 0.100000001490116119384765625f;
|
|
float fragment_unnamed_303;
|
|
float fragment_unnamed_305;
|
|
float fragment_unnamed_307;
|
|
float fragment_unnamed_309;
|
|
float fragment_unnamed_311;
|
|
float fragment_unnamed_313;
|
|
float fragment_unnamed_315;
|
|
float fragment_unnamed_317;
|
|
float fragment_unnamed_319;
|
|
uint fragment_unnamed_321;
|
|
fragment_unnamed_303 = asfloat(0u);
|
|
fragment_unnamed_305 = asfloat(0u);
|
|
fragment_unnamed_307 = asfloat(0u);
|
|
fragment_unnamed_309 = asfloat(0u);
|
|
fragment_unnamed_311 = asfloat(0u);
|
|
fragment_unnamed_313 = asfloat(0u);
|
|
fragment_unnamed_315 = asfloat(0u);
|
|
fragment_unnamed_317 = asfloat(0u);
|
|
fragment_unnamed_319 = asfloat(0u);
|
|
fragment_unnamed_321 = 0u;
|
|
float fragment_unnamed_316;
|
|
float fragment_unnamed_318;
|
|
float fragment_unnamed_320;
|
|
float fragment_unnamed_304;
|
|
float fragment_unnamed_306;
|
|
float fragment_unnamed_308;
|
|
float fragment_unnamed_310;
|
|
float fragment_unnamed_312;
|
|
float fragment_unnamed_314;
|
|
float fragment_unnamed_323;
|
|
for (;;)
|
|
{
|
|
fragment_unnamed_323 = float(int(fragment_unnamed_321));
|
|
if (fragment_unnamed_323 >= fragment_uniform_buffer_0[141u].x)
|
|
{
|
|
break;
|
|
}
|
|
else
|
|
{
|
|
precise float fragment_unnamed_362 = fragment_unnamed_323 + fragment_uniform_buffer_0[140u].y;
|
|
precise float fragment_unnamed_369 = log2(max(abs(fragment_unnamed_362), 5.9604644775390625e-08f)) * fragment_uniform_buffer_0[140u].z;
|
|
float fragment_unnamed_370 = exp2(fragment_unnamed_369);
|
|
precise float fragment_unnamed_371 = fragment_unnamed_238 * fragment_unnamed_323;
|
|
float fragment_unnamed_372 = exp2(fragment_unnamed_371);
|
|
if (fragment_unnamed_262)
|
|
{
|
|
precise float fragment_unnamed_373 = fragment_unnamed_287 * fragment_unnamed_372;
|
|
precise float fragment_unnamed_374 = (-0.0f) - fragment_unnamed_370;
|
|
bool fragment_unnamed_375 = fragment_unnamed_374 < 0.0f;
|
|
precise float fragment_unnamed_376 = 1.0f / fragment_unnamed_370;
|
|
float fragment_unnamed_377 = mad(fragment_unnamed_203, fragment_unnamed_376, 0.5f);
|
|
float fragment_unnamed_378 = mad(fragment_unnamed_205, fragment_unnamed_376, 0.5f);
|
|
precise float fragment_unnamed_379 = (-0.0f) - fragment_unnamed_377;
|
|
precise float fragment_unnamed_380 = (-0.0f) - fragment_unnamed_378;
|
|
precise float fragment_unnamed_381 = fragment_unnamed_379 + 1.0f;
|
|
precise float fragment_unnamed_382 = fragment_unnamed_380 + 1.0f;
|
|
float fragment_unnamed_388 = asfloat(fragment_unnamed_375 ? asuint(fragment_unnamed_381) : asuint(fragment_unnamed_377));
|
|
float fragment_unnamed_390 = asfloat(fragment_unnamed_375 ? asuint(fragment_unnamed_382) : asuint(fragment_unnamed_378));
|
|
float fragment_unnamed_468;
|
|
float fragment_unnamed_469;
|
|
float fragment_unnamed_470;
|
|
if (fragment_unnamed_242)
|
|
{
|
|
precise float fragment_unnamed_400 = min(fragment_unnamed_272, fragment_unnamed_388) * fragment_uniform_buffer_0[28u].x;
|
|
precise float fragment_unnamed_401 = min(fragment_unnamed_273, fragment_unnamed_390) * fragment_uniform_buffer_0[28u].y;
|
|
precise float fragment_unnamed_421 = min(fragment_unnamed_272, mad(fragment_unnamed_253, -0.3333333432674407958984375f, fragment_unnamed_388)) * fragment_uniform_buffer_0[28u].x;
|
|
precise float fragment_unnamed_422 = min(fragment_unnamed_273, mad(fragment_unnamed_254, -0.3333333432674407958984375f, fragment_unnamed_390)) * fragment_uniform_buffer_0[28u].y;
|
|
precise float fragment_unnamed_423 = min(fragment_unnamed_272, mad(fragment_unnamed_255, -0.666666686534881591796875f, fragment_unnamed_388)) * fragment_uniform_buffer_0[28u].x;
|
|
precise float fragment_unnamed_424 = min(fragment_unnamed_273, mad(fragment_unnamed_256, -0.666666686534881591796875f, fragment_unnamed_390)) * fragment_uniform_buffer_0[28u].y;
|
|
fragment_unnamed_468 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float2(fragment_unnamed_400, fragment_unnamed_401), fragment_uniform_buffer_0[4u].x).x;
|
|
fragment_unnamed_469 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float2(fragment_unnamed_421, fragment_unnamed_422), fragment_uniform_buffer_0[4u].x).y;
|
|
fragment_unnamed_470 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float2(fragment_unnamed_423, fragment_unnamed_424), fragment_uniform_buffer_0[4u].x).z;
|
|
}
|
|
else
|
|
{
|
|
precise float fragment_unnamed_443 = min(fragment_unnamed_280, fragment_unnamed_388) * fragment_uniform_buffer_0[28u].x;
|
|
precise float fragment_unnamed_444 = min(fragment_unnamed_281, fragment_unnamed_390) * fragment_uniform_buffer_0[28u].y;
|
|
float4 fragment_unnamed_449 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float2(fragment_unnamed_443, fragment_unnamed_444), fragment_uniform_buffer_0[4u].x);
|
|
fragment_unnamed_468 = fragment_unnamed_449.x;
|
|
fragment_unnamed_469 = fragment_unnamed_449.y;
|
|
fragment_unnamed_470 = fragment_unnamed_449.z;
|
|
}
|
|
precise float fragment_unnamed_476 = fragment_unnamed_468 * fragment_uniform_buffer_0[144u].y;
|
|
precise float fragment_unnamed_477 = fragment_unnamed_469 * fragment_uniform_buffer_0[144u].z;
|
|
precise float fragment_unnamed_478 = fragment_unnamed_470 * fragment_uniform_buffer_0[144u].w;
|
|
fragment_unnamed_304 = mad(fragment_unnamed_476, fragment_unnamed_373, fragment_unnamed_303);
|
|
fragment_unnamed_306 = mad(fragment_unnamed_477, fragment_unnamed_373, fragment_unnamed_305);
|
|
fragment_unnamed_308 = mad(fragment_unnamed_478, fragment_unnamed_373, fragment_unnamed_307);
|
|
}
|
|
else
|
|
{
|
|
fragment_unnamed_304 = fragment_unnamed_303;
|
|
fragment_unnamed_306 = fragment_unnamed_305;
|
|
fragment_unnamed_308 = fragment_unnamed_307;
|
|
}
|
|
if (fragment_unnamed_263)
|
|
{
|
|
precise float fragment_unnamed_454 = fragment_unnamed_289 * fragment_unnamed_372;
|
|
bool fragment_unnamed_455 = fragment_unnamed_370 != 1.0f;
|
|
precise float fragment_unnamed_456 = 1.0f / fragment_unnamed_370;
|
|
float fragment_unnamed_463 = fragment_unnamed_455 ? mad(fragment_unnamed_203, fragment_unnamed_456, 0.5f) : fragment_input_1.x;
|
|
float fragment_unnamed_464 = fragment_unnamed_455 ? mad(fragment_unnamed_205, fragment_unnamed_456, 0.5f) : fragment_input_1.y;
|
|
float fragment_unnamed_612;
|
|
float fragment_unnamed_613;
|
|
float fragment_unnamed_614;
|
|
if (fragment_unnamed_242)
|
|
{
|
|
precise float fragment_unnamed_485 = min(fragment_unnamed_272, fragment_unnamed_463) * fragment_uniform_buffer_0[28u].x;
|
|
precise float fragment_unnamed_486 = min(fragment_unnamed_273, fragment_unnamed_464) * fragment_uniform_buffer_0[28u].y;
|
|
precise float fragment_unnamed_506 = min(fragment_unnamed_272, mad(fragment_unnamed_253, -0.3333333432674407958984375f, fragment_unnamed_463)) * fragment_uniform_buffer_0[28u].x;
|
|
precise float fragment_unnamed_507 = min(fragment_unnamed_273, mad(fragment_unnamed_254, -0.3333333432674407958984375f, fragment_unnamed_464)) * fragment_uniform_buffer_0[28u].y;
|
|
precise float fragment_unnamed_508 = min(fragment_unnamed_272, mad(fragment_unnamed_255, -0.666666686534881591796875f, fragment_unnamed_463)) * fragment_uniform_buffer_0[28u].x;
|
|
precise float fragment_unnamed_509 = min(fragment_unnamed_273, mad(fragment_unnamed_256, -0.666666686534881591796875f, fragment_unnamed_464)) * fragment_uniform_buffer_0[28u].y;
|
|
fragment_unnamed_612 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float2(fragment_unnamed_485, fragment_unnamed_486), fragment_uniform_buffer_0[4u].x).x;
|
|
fragment_unnamed_613 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float2(fragment_unnamed_506, fragment_unnamed_507), fragment_uniform_buffer_0[4u].x).y;
|
|
fragment_unnamed_614 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float2(fragment_unnamed_508, fragment_unnamed_509), fragment_uniform_buffer_0[4u].x).z;
|
|
}
|
|
else
|
|
{
|
|
precise float fragment_unnamed_528 = min(fragment_unnamed_280, fragment_unnamed_463) * fragment_uniform_buffer_0[28u].x;
|
|
precise float fragment_unnamed_529 = min(fragment_unnamed_281, fragment_unnamed_464) * fragment_uniform_buffer_0[28u].y;
|
|
float4 fragment_unnamed_534 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float2(fragment_unnamed_528, fragment_unnamed_529), fragment_uniform_buffer_0[4u].x);
|
|
fragment_unnamed_612 = fragment_unnamed_534.x;
|
|
fragment_unnamed_613 = fragment_unnamed_534.y;
|
|
fragment_unnamed_614 = fragment_unnamed_534.z;
|
|
}
|
|
precise float fragment_unnamed_620 = fragment_unnamed_612 * fragment_uniform_buffer_0[144u].y;
|
|
precise float fragment_unnamed_621 = fragment_unnamed_613 * fragment_uniform_buffer_0[144u].z;
|
|
precise float fragment_unnamed_622 = fragment_unnamed_614 * fragment_uniform_buffer_0[144u].w;
|
|
fragment_unnamed_310 = mad(fragment_unnamed_620, fragment_unnamed_454, fragment_unnamed_309);
|
|
fragment_unnamed_312 = mad(fragment_unnamed_621, fragment_unnamed_454, fragment_unnamed_311);
|
|
fragment_unnamed_314 = mad(fragment_unnamed_622, fragment_unnamed_454, fragment_unnamed_313);
|
|
}
|
|
else
|
|
{
|
|
fragment_unnamed_310 = fragment_unnamed_309;
|
|
fragment_unnamed_312 = fragment_unnamed_311;
|
|
fragment_unnamed_314 = fragment_unnamed_313;
|
|
}
|
|
float frontier_phi_23_pred;
|
|
float frontier_phi_23_pred_1;
|
|
float frontier_phi_23_pred_2;
|
|
if (fragment_unnamed_264)
|
|
{
|
|
precise float fragment_unnamed_539 = fragment_unnamed_290 * fragment_unnamed_372;
|
|
precise float fragment_unnamed_540 = (-0.0f) - fragment_unnamed_370;
|
|
precise float fragment_unnamed_542 = 1.0f / fragment_unnamed_370;
|
|
precise float fragment_unnamed_543 = fragment_unnamed_542 + fragment_unnamed_542;
|
|
precise float fragment_unnamed_544 = fragment_unnamed_203 * fragment_unnamed_543;
|
|
precise float fragment_unnamed_545 = fragment_unnamed_205 * fragment_unnamed_543;
|
|
precise float fragment_unnamed_551 = fragment_unnamed_544 * fragment_uniform_buffer_0[143u].y;
|
|
precise float fragment_unnamed_552 = fragment_unnamed_545 * fragment_uniform_buffer_0[143u].z;
|
|
float fragment_unnamed_555 = max(abs(fragment_unnamed_551), 5.9604644775390625e-08f);
|
|
float fragment_unnamed_556 = max(abs(fragment_unnamed_552), 5.9604644775390625e-08f);
|
|
precise float fragment_unnamed_557 = fragment_unnamed_555 * fragment_unnamed_555;
|
|
precise float fragment_unnamed_558 = fragment_unnamed_556 * fragment_unnamed_556;
|
|
precise float fragment_unnamed_559 = fragment_unnamed_558 + fragment_unnamed_557;
|
|
precise float fragment_unnamed_561 = sqrt(fragment_unnamed_559) * 0.707106769084930419921875f;
|
|
float fragment_unnamed_563 = min(fragment_unnamed_561, 1.0f);
|
|
precise float fragment_unnamed_564 = fragment_unnamed_551 / fragment_unnamed_552;
|
|
bool fragment_unnamed_566 = abs(fragment_unnamed_564) < 1.0f;
|
|
precise float fragment_unnamed_568 = 1.0f / abs(fragment_unnamed_564);
|
|
float fragment_unnamed_570 = fragment_unnamed_566 ? abs(fragment_unnamed_564) : fragment_unnamed_568;
|
|
precise float fragment_unnamed_571 = fragment_unnamed_570 * fragment_unnamed_570;
|
|
float fragment_unnamed_575 = mad(mad(fragment_unnamed_571, 0.087292902171611785888671875f, -0.3018949925899505615234375f), fragment_unnamed_571, 1.0f);
|
|
precise float fragment_unnamed_576 = fragment_unnamed_570 * fragment_unnamed_575;
|
|
precise float fragment_unnamed_577 = (-0.0f) - fragment_unnamed_575;
|
|
float fragment_unnamed_583 = asfloat(fragment_unnamed_566 ? asuint(fragment_unnamed_576) : asuint(mad(fragment_unnamed_577, fragment_unnamed_570, 1.57079637050628662109375f)));
|
|
precise float fragment_unnamed_588 = (-0.0f) - fragment_unnamed_583;
|
|
precise float fragment_unnamed_601 = (-0.0f) - clamp(mad(mad(asfloat((fragment_unnamed_551 >= 0.0f) ? 1078530011u : 3226013659u), asfloat(((fragment_unnamed_552 < 0.0f) ? 4294967295u : 0u) & 1065353216u), (fragment_unnamed_564 < 0.0f) ? fragment_unnamed_588 : fragment_unnamed_583), 0.15915493667125701904296875f, 0.5f), 0.0f, 1.0f);
|
|
precise float fragment_unnamed_602 = fragment_unnamed_601 + 1.0f;
|
|
precise float fragment_unnamed_603 = (-0.0f) - fragment_unnamed_563;
|
|
precise float fragment_unnamed_604 = fragment_unnamed_603 + 1.0f;
|
|
float fragment_unnamed_608 = asfloat((fragment_unnamed_540 < 0.0f) ? asuint(fragment_unnamed_604) : asuint(fragment_unnamed_563));
|
|
float fragment_unnamed_683;
|
|
float fragment_unnamed_684;
|
|
float fragment_unnamed_685;
|
|
if (fragment_unnamed_242)
|
|
{
|
|
precise float fragment_unnamed_629 = min(fragment_unnamed_272, fragment_unnamed_602) * fragment_uniform_buffer_0[28u].x;
|
|
precise float fragment_unnamed_630 = min(fragment_unnamed_273, fragment_unnamed_608) * fragment_uniform_buffer_0[28u].y;
|
|
precise float fragment_unnamed_650 = min(fragment_unnamed_272, mad(fragment_unnamed_253, -0.3333333432674407958984375f, fragment_unnamed_602)) * fragment_uniform_buffer_0[28u].x;
|
|
precise float fragment_unnamed_651 = min(fragment_unnamed_273, mad(fragment_unnamed_254, -0.3333333432674407958984375f, fragment_unnamed_608)) * fragment_uniform_buffer_0[28u].y;
|
|
precise float fragment_unnamed_652 = min(fragment_unnamed_272, mad(fragment_unnamed_255, -0.666666686534881591796875f, fragment_unnamed_602)) * fragment_uniform_buffer_0[28u].x;
|
|
precise float fragment_unnamed_653 = min(fragment_unnamed_273, mad(fragment_unnamed_256, -0.666666686534881591796875f, fragment_unnamed_608)) * fragment_uniform_buffer_0[28u].y;
|
|
fragment_unnamed_683 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float2(fragment_unnamed_629, fragment_unnamed_630), fragment_uniform_buffer_0[4u].x).x;
|
|
fragment_unnamed_684 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float2(fragment_unnamed_650, fragment_unnamed_651), fragment_uniform_buffer_0[4u].x).y;
|
|
fragment_unnamed_685 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float2(fragment_unnamed_652, fragment_unnamed_653), fragment_uniform_buffer_0[4u].x).z;
|
|
}
|
|
else
|
|
{
|
|
precise float fragment_unnamed_672 = min(fragment_unnamed_280, fragment_unnamed_602) * fragment_uniform_buffer_0[28u].x;
|
|
precise float fragment_unnamed_673 = min(fragment_unnamed_281, fragment_unnamed_608) * fragment_uniform_buffer_0[28u].y;
|
|
float4 fragment_unnamed_678 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float2(fragment_unnamed_672, fragment_unnamed_673), fragment_uniform_buffer_0[4u].x);
|
|
fragment_unnamed_683 = fragment_unnamed_678.x;
|
|
fragment_unnamed_684 = fragment_unnamed_678.y;
|
|
fragment_unnamed_685 = fragment_unnamed_678.z;
|
|
}
|
|
precise float fragment_unnamed_691 = fragment_unnamed_683 * fragment_uniform_buffer_0[144u].y;
|
|
precise float fragment_unnamed_692 = fragment_unnamed_684 * fragment_uniform_buffer_0[144u].z;
|
|
precise float fragment_unnamed_693 = fragment_unnamed_685 * fragment_uniform_buffer_0[144u].w;
|
|
frontier_phi_23_pred = mad(fragment_unnamed_693, fragment_unnamed_539, fragment_unnamed_319);
|
|
frontier_phi_23_pred_1 = mad(fragment_unnamed_692, fragment_unnamed_539, fragment_unnamed_317);
|
|
frontier_phi_23_pred_2 = mad(fragment_unnamed_691, fragment_unnamed_539, fragment_unnamed_315);
|
|
}
|
|
else
|
|
{
|
|
frontier_phi_23_pred = fragment_unnamed_319;
|
|
frontier_phi_23_pred_1 = fragment_unnamed_317;
|
|
frontier_phi_23_pred_2 = fragment_unnamed_315;
|
|
}
|
|
fragment_unnamed_320 = frontier_phi_23_pred;
|
|
fragment_unnamed_318 = frontier_phi_23_pred_1;
|
|
fragment_unnamed_316 = frontier_phi_23_pred_2;
|
|
fragment_unnamed_303 = fragment_unnamed_304;
|
|
fragment_unnamed_305 = fragment_unnamed_306;
|
|
fragment_unnamed_307 = fragment_unnamed_308;
|
|
fragment_unnamed_309 = fragment_unnamed_310;
|
|
fragment_unnamed_311 = fragment_unnamed_312;
|
|
fragment_unnamed_313 = fragment_unnamed_314;
|
|
fragment_unnamed_315 = fragment_unnamed_316;
|
|
fragment_unnamed_317 = fragment_unnamed_318;
|
|
fragment_unnamed_319 = fragment_unnamed_320;
|
|
fragment_unnamed_321++;
|
|
continue;
|
|
}
|
|
}
|
|
precise float fragment_unnamed_353 = fragment_unnamed_303 + fragment_unnamed_309;
|
|
precise float fragment_unnamed_354 = fragment_unnamed_305 + fragment_unnamed_311;
|
|
precise float fragment_unnamed_355 = fragment_unnamed_307 + fragment_unnamed_313;
|
|
precise float fragment_unnamed_356 = fragment_unnamed_221 * fragment_unnamed_315;
|
|
precise float fragment_unnamed_357 = fragment_unnamed_221 * fragment_unnamed_317;
|
|
precise float fragment_unnamed_358 = fragment_unnamed_221 * fragment_unnamed_319;
|
|
fragment_unnamed_328 = mad(fragment_unnamed_355, fragment_unnamed_232, fragment_unnamed_358);
|
|
fragment_unnamed_330 = mad(fragment_unnamed_354, fragment_unnamed_232, fragment_unnamed_357);
|
|
fragment_unnamed_332 = mad(fragment_unnamed_353, fragment_unnamed_232, fragment_unnamed_356);
|
|
}
|
|
else
|
|
{
|
|
fragment_unnamed_328 = asfloat(0u);
|
|
fragment_unnamed_330 = asfloat(0u);
|
|
fragment_unnamed_332 = asfloat(0u);
|
|
}
|
|
precise float fragment_unnamed_334 = fragment_unnamed_177 + fragment_unnamed_332;
|
|
precise float fragment_unnamed_335 = fragment_unnamed_175 + fragment_unnamed_330;
|
|
precise float fragment_unnamed_336 = fragment_unnamed_173 + fragment_unnamed_328;
|
|
precise float fragment_unnamed_342 = fragment_unnamed_334 * fragment_uniform_buffer_0[139u].x;
|
|
precise float fragment_unnamed_343 = fragment_unnamed_335 * fragment_uniform_buffer_0[139u].x;
|
|
precise float fragment_unnamed_344 = fragment_unnamed_336 * fragment_uniform_buffer_0[139u].x;
|
|
precise float fragment_unnamed_345 = asfloat(1065353216u) * fragment_uniform_buffer_0[139u].x;
|
|
fragment_output_0.x = fragment_unnamed_342;
|
|
fragment_output_0.y = fragment_unnamed_343;
|
|
fragment_output_0.z = fragment_unnamed_344;
|
|
fragment_output_0.w = fragment_unnamed_345;
|
|
}
|
|
|
|
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
|
|
{
|
|
fragment_uniform_buffer_0[28] = float4(_RTHandleScale[0], _RTHandleScale[1], _RTHandleScale[2], _RTHandleScale[3]);
|
|
|
|
fragment_uniform_buffer_0[123] = float4(_ScreenSize[0], _ScreenSize[1], _ScreenSize[2], _ScreenSize[3]);
|
|
|
|
fragment_uniform_buffer_0[137] = float4(_LensFlareScreenSpaceBloomMipTexture_TexelSize[0], _LensFlareScreenSpaceBloomMipTexture_TexelSize[1], _LensFlareScreenSpaceBloomMipTexture_TexelSize[2], _LensFlareScreenSpaceBloomMipTexture_TexelSize[3]);
|
|
|
|
fragment_uniform_buffer_0[139] = float4(_LensFlareScreenSpaceParams1[0], _LensFlareScreenSpaceParams1[1], _LensFlareScreenSpaceParams1[2], _LensFlareScreenSpaceParams1[3]);
|
|
|
|
fragment_uniform_buffer_0[140] = float4(_LensFlareScreenSpaceParams2[0], _LensFlareScreenSpaceParams2[1], _LensFlareScreenSpaceParams2[2], _LensFlareScreenSpaceParams2[3]);
|
|
|
|
fragment_uniform_buffer_0[141] = float4(_LensFlareScreenSpaceParams3[0], _LensFlareScreenSpaceParams3[1], _LensFlareScreenSpaceParams3[2], _LensFlareScreenSpaceParams3[3]);
|
|
|
|
fragment_uniform_buffer_0[142] = float4(_LensFlareScreenSpaceParams4[0], _LensFlareScreenSpaceParams4[1], _LensFlareScreenSpaceParams4[2], _LensFlareScreenSpaceParams4[3]);
|
|
|
|
fragment_uniform_buffer_0[143] = float4(_LensFlareScreenSpaceParams5[0], _LensFlareScreenSpaceParams5[1], _LensFlareScreenSpaceParams5[2], _LensFlareScreenSpaceParams5[3]);
|
|
|
|
fragment_uniform_buffer_0[144] = float4(fragment_uniform_buffer_0[144][0], _LensFlareScreenSpaceTintColor[0], _LensFlareScreenSpaceTintColor[1], _LensFlareScreenSpaceTintColor[2]);
|
|
|
|
fragment_input_1 = stage_input.fragment_input_1;
|
|
frag_main();
|
|
Fragment_Stage_Output stage_output;
|
|
stage_output.fragment_output_0 = fragment_output_0;
|
|
return stage_output;
|
|
}
|
|
|
|
#endif // !STEREO_INSTANCING_ON
|
|
|
|
|
|
#ifdef STEREO_INSTANCING_ON
|
|
#define ANY_SHADER_VARIANT_ACTIVE
|
|
|
|
float4 _RTHandleScale;
|
|
float4 _ScreenSize;
|
|
float4 _LensFlareScreenSpaceBloomMipTexture_TexelSize;
|
|
float4 _LensFlareScreenSpaceParams1;
|
|
float4 _LensFlareScreenSpaceParams2;
|
|
float4 _LensFlareScreenSpaceParams3;
|
|
float4 _LensFlareScreenSpaceParams4;
|
|
float4 _LensFlareScreenSpaceParams5;
|
|
float3 _LensFlareScreenSpaceTintColor;
|
|
|
|
static float4 fragment_uniform_buffer_0[114];
|
|
Texture2DArray<float4> _LensFlareScreenSpaceStreakTex;
|
|
Texture2DArray<float4> _LensFlareScreenSpaceBloomMipTexture;
|
|
SamplerState S0;
|
|
|
|
static uint gl_Layer;
|
|
static float2 fragment_input_1;
|
|
static float4 fragment_output_0;
|
|
|
|
struct Fragment_Stage_Input
|
|
{
|
|
float2 fragment_input_1 : TEXCOORD; // TEXCOORD
|
|
uint gl_Layer : SV_RenderTargetArrayIndex;
|
|
};
|
|
|
|
struct Fragment_Stage_Output
|
|
{
|
|
float4 fragment_output_0 : SV_Target0;
|
|
};
|
|
|
|
void frag_main()
|
|
{
|
|
float fragment_unnamed_180;
|
|
float fragment_unnamed_182;
|
|
float fragment_unnamed_184;
|
|
if (0.0f < fragment_uniform_buffer_0[111u].x)
|
|
{
|
|
float fragment_unnamed_191;
|
|
float fragment_unnamed_192;
|
|
float fragment_unnamed_193;
|
|
if (0.0f < fragment_uniform_buffer_0[110u].z)
|
|
{
|
|
float fragment_unnamed_60 = mad(fragment_input_1.x, 2.0f, -1.0f);
|
|
float fragment_unnamed_61 = mad(fragment_input_1.y, 2.0f, -1.0f);
|
|
float fragment_unnamed_62 = dot(float2(fragment_unnamed_60, fragment_unnamed_61), float2(fragment_unnamed_60, fragment_unnamed_61));
|
|
precise float fragment_unnamed_65 = mad(fragment_input_1.x, 2.0f, -1.0f) * fragment_unnamed_62;
|
|
precise float fragment_unnamed_66 = mad(fragment_input_1.y, 2.0f, -1.0f) * fragment_unnamed_62;
|
|
precise float fragment_unnamed_67 = fragment_unnamed_60 * fragment_unnamed_62;
|
|
precise float fragment_unnamed_68 = fragment_unnamed_61 * fragment_unnamed_62;
|
|
precise float fragment_unnamed_72 = fragment_unnamed_65 * fragment_uniform_buffer_0[110u].z;
|
|
precise float fragment_unnamed_73 = fragment_unnamed_66 * fragment_uniform_buffer_0[110u].z;
|
|
precise float fragment_unnamed_74 = fragment_unnamed_67 * fragment_uniform_buffer_0[110u].z;
|
|
precise float fragment_unnamed_75 = fragment_unnamed_68 * fragment_uniform_buffer_0[110u].z;
|
|
precise float fragment_unnamed_80 = (-0.0f) - fragment_uniform_buffer_0[92u].z;
|
|
precise float fragment_unnamed_83 = (-0.0f) - fragment_uniform_buffer_0[92u].w;
|
|
float fragment_unnamed_88 = mad(fragment_unnamed_80, 0.5f, 1.0f);
|
|
float fragment_unnamed_89 = mad(fragment_unnamed_83, 0.5f, 1.0f);
|
|
precise float fragment_unnamed_101 = min(fragment_unnamed_88, fragment_input_1.x) * fragment_uniform_buffer_0[27u].x;
|
|
precise float fragment_unnamed_102 = min(fragment_unnamed_89, fragment_input_1.y) * fragment_uniform_buffer_0[27u].y;
|
|
float fragment_unnamed_104 = float(uint(gl_Layer));
|
|
precise float fragment_unnamed_133 = min(mad(fragment_unnamed_80, 0.5f, 1.0f), mad(fragment_unnamed_72, -0.3333333432674407958984375f, fragment_input_1.x)) * fragment_uniform_buffer_0[27u].x;
|
|
precise float fragment_unnamed_134 = min(mad(fragment_unnamed_83, 0.5f, 1.0f), mad(fragment_unnamed_73, -0.3333333432674407958984375f, fragment_input_1.y)) * fragment_uniform_buffer_0[27u].y;
|
|
precise float fragment_unnamed_135 = min(fragment_unnamed_88, mad(fragment_unnamed_74, -0.666666686534881591796875f, fragment_input_1.x)) * fragment_uniform_buffer_0[27u].x;
|
|
precise float fragment_unnamed_136 = min(fragment_unnamed_89, mad(fragment_unnamed_75, -0.666666686534881591796875f, fragment_input_1.y)) * fragment_uniform_buffer_0[27u].y;
|
|
fragment_unnamed_191 = _LensFlareScreenSpaceStreakTex.SampleBias(S0, float3(fragment_unnamed_135, fragment_unnamed_136, fragment_unnamed_104), fragment_uniform_buffer_0[4u].x).z;
|
|
fragment_unnamed_192 = _LensFlareScreenSpaceStreakTex.SampleBias(S0, float3(fragment_unnamed_133, fragment_unnamed_134, fragment_unnamed_104), fragment_uniform_buffer_0[4u].x).y;
|
|
fragment_unnamed_193 = _LensFlareScreenSpaceStreakTex.SampleBias(S0, float3(fragment_unnamed_101, fragment_unnamed_102, fragment_unnamed_104), fragment_uniform_buffer_0[4u].x).x;
|
|
}
|
|
else
|
|
{
|
|
precise float fragment_unnamed_152 = (-0.0f) - fragment_uniform_buffer_0[92u].z;
|
|
precise float fragment_unnamed_154 = (-0.0f) - fragment_uniform_buffer_0[92u].w;
|
|
precise float fragment_unnamed_167 = min(mad(fragment_unnamed_152, 0.5f, 1.0f), fragment_input_1.x) * fragment_uniform_buffer_0[27u].x;
|
|
precise float fragment_unnamed_168 = min(mad(fragment_unnamed_154, 0.5f, 1.0f), fragment_input_1.y) * fragment_uniform_buffer_0[27u].y;
|
|
float4 fragment_unnamed_175 = _LensFlareScreenSpaceStreakTex.SampleBias(S0, float3(fragment_unnamed_167, fragment_unnamed_168, float(uint(gl_Layer))), fragment_uniform_buffer_0[4u].x);
|
|
fragment_unnamed_191 = fragment_unnamed_175.z;
|
|
fragment_unnamed_192 = fragment_unnamed_175.y;
|
|
fragment_unnamed_193 = fragment_unnamed_175.x;
|
|
}
|
|
precise float fragment_unnamed_200 = fragment_unnamed_193 * fragment_uniform_buffer_0[113u].y;
|
|
precise float fragment_unnamed_201 = fragment_unnamed_192 * fragment_uniform_buffer_0[113u].z;
|
|
precise float fragment_unnamed_202 = fragment_unnamed_191 * fragment_uniform_buffer_0[113u].w;
|
|
precise float fragment_unnamed_185 = fragment_unnamed_200 * fragment_uniform_buffer_0[111u].x;
|
|
precise float fragment_unnamed_183 = fragment_unnamed_201 * fragment_uniform_buffer_0[111u].x;
|
|
precise float fragment_unnamed_181 = fragment_unnamed_202 * fragment_uniform_buffer_0[111u].x;
|
|
fragment_unnamed_180 = fragment_unnamed_181;
|
|
fragment_unnamed_182 = fragment_unnamed_183;
|
|
fragment_unnamed_184 = fragment_unnamed_185;
|
|
}
|
|
else
|
|
{
|
|
fragment_unnamed_180 = asfloat(0u);
|
|
fragment_unnamed_182 = asfloat(0u);
|
|
fragment_unnamed_184 = asfloat(0u);
|
|
}
|
|
float fragment_unnamed_337;
|
|
float fragment_unnamed_339;
|
|
float fragment_unnamed_341;
|
|
if (0.0f < fragment_uniform_buffer_0[108u].x)
|
|
{
|
|
precise float fragment_unnamed_210 = fragment_input_1.x + (-0.5f);
|
|
precise float fragment_unnamed_212 = fragment_input_1.y + (-0.5f);
|
|
float fragment_unnamed_219 = mad(fragment_input_1.x, 2.0f, -1.0f);
|
|
float fragment_unnamed_220 = mad(fragment_input_1.y, 2.0f, -1.0f);
|
|
float fragment_unnamed_223 = max(abs(mad(fragment_input_1.x, 2.0f, -1.0f)), 5.9604644775390625e-08f);
|
|
float fragment_unnamed_225 = max(abs(mad(fragment_input_1.y, 2.0f, -1.0f)), 5.9604644775390625e-08f);
|
|
precise float fragment_unnamed_226 = fragment_unnamed_223 * fragment_unnamed_223;
|
|
precise float fragment_unnamed_227 = fragment_unnamed_225 * fragment_unnamed_225;
|
|
float fragment_unnamed_228 = min(fragment_unnamed_226, 1.0f);
|
|
precise float fragment_unnamed_230 = min(fragment_unnamed_227, 1.0f) + fragment_unnamed_228;
|
|
float fragment_unnamed_231 = max(fragment_unnamed_230, 5.9604644775390625e-08f);
|
|
precise float fragment_unnamed_232 = fragment_unnamed_231 * fragment_unnamed_231;
|
|
precise float fragment_unnamed_234 = min(fragment_unnamed_232, 1.0f) + (-1.0f);
|
|
float fragment_unnamed_239 = mad(fragment_uniform_buffer_0[109u].x, fragment_unnamed_234, 1.0f);
|
|
float fragment_unnamed_245 = log2(max(abs(fragment_uniform_buffer_0[110u].y), 5.9604644775390625e-08f));
|
|
bool fragment_unnamed_249 = 0.0f < fragment_uniform_buffer_0[110u].z;
|
|
float fragment_unnamed_250 = dot(float2(fragment_unnamed_219, fragment_unnamed_220), float2(fragment_unnamed_219, fragment_unnamed_220));
|
|
precise float fragment_unnamed_253 = fragment_unnamed_250 * fragment_unnamed_219;
|
|
precise float fragment_unnamed_254 = fragment_unnamed_250 * fragment_unnamed_220;
|
|
precise float fragment_unnamed_255 = fragment_unnamed_250 * fragment_unnamed_219;
|
|
precise float fragment_unnamed_256 = fragment_unnamed_250 * fragment_unnamed_220;
|
|
precise float fragment_unnamed_260 = fragment_unnamed_253 * fragment_uniform_buffer_0[110u].z;
|
|
precise float fragment_unnamed_261 = fragment_unnamed_254 * fragment_uniform_buffer_0[110u].z;
|
|
precise float fragment_unnamed_262 = fragment_unnamed_255 * fragment_uniform_buffer_0[110u].z;
|
|
precise float fragment_unnamed_263 = fragment_unnamed_256 * fragment_uniform_buffer_0[110u].z;
|
|
bool fragment_unnamed_269 = 0.0f < fragment_uniform_buffer_0[108u].z;
|
|
bool fragment_unnamed_270 = 0.0f < fragment_uniform_buffer_0[108u].y;
|
|
bool fragment_unnamed_271 = 0.0f < fragment_uniform_buffer_0[108u].w;
|
|
precise float fragment_unnamed_276 = (-0.0f) - fragment_uniform_buffer_0[106u].x;
|
|
precise float fragment_unnamed_278 = (-0.0f) - fragment_uniform_buffer_0[106u].y;
|
|
float fragment_unnamed_279 = mad(fragment_unnamed_276, 0.5f, 1.0f);
|
|
float fragment_unnamed_280 = mad(fragment_unnamed_278, 0.5f, 1.0f);
|
|
float fragment_unnamed_282 = float(uint(gl_Layer));
|
|
precise float fragment_unnamed_286 = (-0.0f) - fragment_uniform_buffer_0[92u].z;
|
|
precise float fragment_unnamed_288 = (-0.0f) - fragment_uniform_buffer_0[92u].w;
|
|
float fragment_unnamed_289 = mad(fragment_unnamed_286, 0.5f, 1.0f);
|
|
float fragment_unnamed_290 = mad(fragment_unnamed_288, 0.5f, 1.0f);
|
|
precise float fragment_unnamed_296 = fragment_uniform_buffer_0[108u].z * 0.100000001490116119384765625f;
|
|
precise float fragment_unnamed_298 = fragment_uniform_buffer_0[108u].y * 0.100000001490116119384765625f;
|
|
precise float fragment_unnamed_299 = fragment_uniform_buffer_0[108u].w * 0.100000001490116119384765625f;
|
|
float fragment_unnamed_312;
|
|
float fragment_unnamed_314;
|
|
float fragment_unnamed_316;
|
|
float fragment_unnamed_318;
|
|
float fragment_unnamed_320;
|
|
float fragment_unnamed_322;
|
|
float fragment_unnamed_324;
|
|
float fragment_unnamed_326;
|
|
float fragment_unnamed_328;
|
|
uint fragment_unnamed_330;
|
|
fragment_unnamed_312 = asfloat(0u);
|
|
fragment_unnamed_314 = asfloat(0u);
|
|
fragment_unnamed_316 = asfloat(0u);
|
|
fragment_unnamed_318 = asfloat(0u);
|
|
fragment_unnamed_320 = asfloat(0u);
|
|
fragment_unnamed_322 = asfloat(0u);
|
|
fragment_unnamed_324 = asfloat(0u);
|
|
fragment_unnamed_326 = asfloat(0u);
|
|
fragment_unnamed_328 = asfloat(0u);
|
|
fragment_unnamed_330 = 0u;
|
|
float fragment_unnamed_325;
|
|
float fragment_unnamed_327;
|
|
float fragment_unnamed_329;
|
|
float fragment_unnamed_313;
|
|
float fragment_unnamed_315;
|
|
float fragment_unnamed_317;
|
|
float fragment_unnamed_319;
|
|
float fragment_unnamed_321;
|
|
float fragment_unnamed_323;
|
|
float fragment_unnamed_332;
|
|
for (;;)
|
|
{
|
|
fragment_unnamed_332 = float(int(fragment_unnamed_330));
|
|
if (fragment_unnamed_332 >= fragment_uniform_buffer_0[110u].x)
|
|
{
|
|
break;
|
|
}
|
|
else
|
|
{
|
|
precise float fragment_unnamed_371 = fragment_unnamed_332 + fragment_uniform_buffer_0[109u].y;
|
|
precise float fragment_unnamed_378 = log2(max(abs(fragment_unnamed_371), 5.9604644775390625e-08f)) * fragment_uniform_buffer_0[109u].z;
|
|
float fragment_unnamed_379 = exp2(fragment_unnamed_378);
|
|
precise float fragment_unnamed_380 = fragment_unnamed_245 * fragment_unnamed_332;
|
|
float fragment_unnamed_381 = exp2(fragment_unnamed_380);
|
|
if (fragment_unnamed_269)
|
|
{
|
|
precise float fragment_unnamed_382 = fragment_unnamed_381 * fragment_unnamed_296;
|
|
precise float fragment_unnamed_383 = (-0.0f) - fragment_unnamed_379;
|
|
bool fragment_unnamed_384 = fragment_unnamed_383 < 0.0f;
|
|
precise float fragment_unnamed_385 = 1.0f / fragment_unnamed_379;
|
|
float fragment_unnamed_386 = mad(fragment_unnamed_210, fragment_unnamed_385, 0.5f);
|
|
float fragment_unnamed_387 = mad(fragment_unnamed_212, fragment_unnamed_385, 0.5f);
|
|
precise float fragment_unnamed_388 = (-0.0f) - fragment_unnamed_386;
|
|
precise float fragment_unnamed_389 = (-0.0f) - fragment_unnamed_387;
|
|
precise float fragment_unnamed_390 = fragment_unnamed_388 + 1.0f;
|
|
precise float fragment_unnamed_391 = fragment_unnamed_389 + 1.0f;
|
|
float fragment_unnamed_397 = asfloat(fragment_unnamed_384 ? asuint(fragment_unnamed_390) : asuint(fragment_unnamed_386));
|
|
float fragment_unnamed_399 = asfloat(fragment_unnamed_384 ? asuint(fragment_unnamed_391) : asuint(fragment_unnamed_387));
|
|
float fragment_unnamed_477;
|
|
float fragment_unnamed_478;
|
|
float fragment_unnamed_479;
|
|
if (fragment_unnamed_249)
|
|
{
|
|
precise float fragment_unnamed_409 = min(fragment_unnamed_279, fragment_unnamed_397) * fragment_uniform_buffer_0[27u].x;
|
|
precise float fragment_unnamed_410 = min(fragment_unnamed_280, fragment_unnamed_399) * fragment_uniform_buffer_0[27u].y;
|
|
precise float fragment_unnamed_430 = min(fragment_unnamed_279, mad(fragment_unnamed_260, -0.3333333432674407958984375f, fragment_unnamed_397)) * fragment_uniform_buffer_0[27u].x;
|
|
precise float fragment_unnamed_431 = min(fragment_unnamed_280, mad(fragment_unnamed_261, -0.3333333432674407958984375f, fragment_unnamed_399)) * fragment_uniform_buffer_0[27u].y;
|
|
precise float fragment_unnamed_432 = min(fragment_unnamed_279, mad(fragment_unnamed_262, -0.666666686534881591796875f, fragment_unnamed_397)) * fragment_uniform_buffer_0[27u].x;
|
|
precise float fragment_unnamed_433 = min(fragment_unnamed_280, mad(fragment_unnamed_263, -0.666666686534881591796875f, fragment_unnamed_399)) * fragment_uniform_buffer_0[27u].y;
|
|
fragment_unnamed_477 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float3(fragment_unnamed_409, fragment_unnamed_410, fragment_unnamed_282), fragment_uniform_buffer_0[4u].x).x;
|
|
fragment_unnamed_478 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float3(fragment_unnamed_430, fragment_unnamed_431, fragment_unnamed_282), fragment_uniform_buffer_0[4u].x).y;
|
|
fragment_unnamed_479 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float3(fragment_unnamed_432, fragment_unnamed_433, fragment_unnamed_282), fragment_uniform_buffer_0[4u].x).z;
|
|
}
|
|
else
|
|
{
|
|
precise float fragment_unnamed_452 = min(fragment_unnamed_289, fragment_unnamed_397) * fragment_uniform_buffer_0[27u].x;
|
|
precise float fragment_unnamed_453 = min(fragment_unnamed_290, fragment_unnamed_399) * fragment_uniform_buffer_0[27u].y;
|
|
float4 fragment_unnamed_458 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float3(fragment_unnamed_452, fragment_unnamed_453, fragment_unnamed_282), fragment_uniform_buffer_0[4u].x);
|
|
fragment_unnamed_477 = fragment_unnamed_458.x;
|
|
fragment_unnamed_478 = fragment_unnamed_458.y;
|
|
fragment_unnamed_479 = fragment_unnamed_458.z;
|
|
}
|
|
precise float fragment_unnamed_485 = fragment_unnamed_477 * fragment_uniform_buffer_0[113u].y;
|
|
precise float fragment_unnamed_486 = fragment_unnamed_478 * fragment_uniform_buffer_0[113u].z;
|
|
precise float fragment_unnamed_487 = fragment_unnamed_479 * fragment_uniform_buffer_0[113u].w;
|
|
fragment_unnamed_313 = mad(fragment_unnamed_485, fragment_unnamed_382, fragment_unnamed_312);
|
|
fragment_unnamed_315 = mad(fragment_unnamed_486, fragment_unnamed_382, fragment_unnamed_314);
|
|
fragment_unnamed_317 = mad(fragment_unnamed_487, fragment_unnamed_382, fragment_unnamed_316);
|
|
}
|
|
else
|
|
{
|
|
fragment_unnamed_313 = fragment_unnamed_312;
|
|
fragment_unnamed_315 = fragment_unnamed_314;
|
|
fragment_unnamed_317 = fragment_unnamed_316;
|
|
}
|
|
if (fragment_unnamed_270)
|
|
{
|
|
precise float fragment_unnamed_463 = fragment_unnamed_381 * fragment_unnamed_298;
|
|
bool fragment_unnamed_464 = fragment_unnamed_379 != 1.0f;
|
|
precise float fragment_unnamed_465 = 1.0f / fragment_unnamed_379;
|
|
float fragment_unnamed_472 = fragment_unnamed_464 ? mad(fragment_unnamed_210, fragment_unnamed_465, 0.5f) : fragment_input_1.x;
|
|
float fragment_unnamed_473 = fragment_unnamed_464 ? mad(fragment_unnamed_212, fragment_unnamed_465, 0.5f) : fragment_input_1.y;
|
|
float fragment_unnamed_621;
|
|
float fragment_unnamed_622;
|
|
float fragment_unnamed_623;
|
|
if (fragment_unnamed_249)
|
|
{
|
|
precise float fragment_unnamed_494 = min(fragment_unnamed_279, fragment_unnamed_472) * fragment_uniform_buffer_0[27u].x;
|
|
precise float fragment_unnamed_495 = min(fragment_unnamed_280, fragment_unnamed_473) * fragment_uniform_buffer_0[27u].y;
|
|
precise float fragment_unnamed_515 = min(fragment_unnamed_279, mad(fragment_unnamed_260, -0.3333333432674407958984375f, fragment_unnamed_472)) * fragment_uniform_buffer_0[27u].x;
|
|
precise float fragment_unnamed_516 = min(fragment_unnamed_280, mad(fragment_unnamed_261, -0.3333333432674407958984375f, fragment_unnamed_473)) * fragment_uniform_buffer_0[27u].y;
|
|
precise float fragment_unnamed_517 = min(fragment_unnamed_279, mad(fragment_unnamed_262, -0.666666686534881591796875f, fragment_unnamed_472)) * fragment_uniform_buffer_0[27u].x;
|
|
precise float fragment_unnamed_518 = min(fragment_unnamed_280, mad(fragment_unnamed_263, -0.666666686534881591796875f, fragment_unnamed_473)) * fragment_uniform_buffer_0[27u].y;
|
|
fragment_unnamed_621 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float3(fragment_unnamed_494, fragment_unnamed_495, fragment_unnamed_282), fragment_uniform_buffer_0[4u].x).x;
|
|
fragment_unnamed_622 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float3(fragment_unnamed_515, fragment_unnamed_516, fragment_unnamed_282), fragment_uniform_buffer_0[4u].x).y;
|
|
fragment_unnamed_623 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float3(fragment_unnamed_517, fragment_unnamed_518, fragment_unnamed_282), fragment_uniform_buffer_0[4u].x).z;
|
|
}
|
|
else
|
|
{
|
|
precise float fragment_unnamed_537 = min(fragment_unnamed_289, fragment_unnamed_472) * fragment_uniform_buffer_0[27u].x;
|
|
precise float fragment_unnamed_538 = min(fragment_unnamed_290, fragment_unnamed_473) * fragment_uniform_buffer_0[27u].y;
|
|
float4 fragment_unnamed_543 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float3(fragment_unnamed_537, fragment_unnamed_538, fragment_unnamed_282), fragment_uniform_buffer_0[4u].x);
|
|
fragment_unnamed_621 = fragment_unnamed_543.x;
|
|
fragment_unnamed_622 = fragment_unnamed_543.y;
|
|
fragment_unnamed_623 = fragment_unnamed_543.z;
|
|
}
|
|
precise float fragment_unnamed_629 = fragment_unnamed_621 * fragment_uniform_buffer_0[113u].y;
|
|
precise float fragment_unnamed_630 = fragment_unnamed_622 * fragment_uniform_buffer_0[113u].z;
|
|
precise float fragment_unnamed_631 = fragment_unnamed_623 * fragment_uniform_buffer_0[113u].w;
|
|
fragment_unnamed_319 = mad(fragment_unnamed_629, fragment_unnamed_463, fragment_unnamed_318);
|
|
fragment_unnamed_321 = mad(fragment_unnamed_630, fragment_unnamed_463, fragment_unnamed_320);
|
|
fragment_unnamed_323 = mad(fragment_unnamed_631, fragment_unnamed_463, fragment_unnamed_322);
|
|
}
|
|
else
|
|
{
|
|
fragment_unnamed_319 = fragment_unnamed_318;
|
|
fragment_unnamed_321 = fragment_unnamed_320;
|
|
fragment_unnamed_323 = fragment_unnamed_322;
|
|
}
|
|
float frontier_phi_23_pred;
|
|
float frontier_phi_23_pred_1;
|
|
float frontier_phi_23_pred_2;
|
|
if (fragment_unnamed_271)
|
|
{
|
|
precise float fragment_unnamed_548 = fragment_unnamed_381 * fragment_unnamed_299;
|
|
precise float fragment_unnamed_549 = (-0.0f) - fragment_unnamed_379;
|
|
precise float fragment_unnamed_551 = 1.0f / fragment_unnamed_379;
|
|
precise float fragment_unnamed_552 = fragment_unnamed_551 + fragment_unnamed_551;
|
|
precise float fragment_unnamed_553 = fragment_unnamed_210 * fragment_unnamed_552;
|
|
precise float fragment_unnamed_554 = fragment_unnamed_212 * fragment_unnamed_552;
|
|
precise float fragment_unnamed_560 = fragment_unnamed_553 * fragment_uniform_buffer_0[112u].y;
|
|
precise float fragment_unnamed_561 = fragment_unnamed_554 * fragment_uniform_buffer_0[112u].z;
|
|
float fragment_unnamed_564 = max(abs(fragment_unnamed_560), 5.9604644775390625e-08f);
|
|
float fragment_unnamed_565 = max(abs(fragment_unnamed_561), 5.9604644775390625e-08f);
|
|
precise float fragment_unnamed_566 = fragment_unnamed_564 * fragment_unnamed_564;
|
|
precise float fragment_unnamed_567 = fragment_unnamed_565 * fragment_unnamed_565;
|
|
precise float fragment_unnamed_568 = fragment_unnamed_567 + fragment_unnamed_566;
|
|
precise float fragment_unnamed_570 = sqrt(fragment_unnamed_568) * 0.707106769084930419921875f;
|
|
float fragment_unnamed_572 = min(fragment_unnamed_570, 1.0f);
|
|
precise float fragment_unnamed_573 = fragment_unnamed_560 / fragment_unnamed_561;
|
|
bool fragment_unnamed_575 = abs(fragment_unnamed_573) < 1.0f;
|
|
precise float fragment_unnamed_577 = 1.0f / abs(fragment_unnamed_573);
|
|
float fragment_unnamed_579 = fragment_unnamed_575 ? abs(fragment_unnamed_573) : fragment_unnamed_577;
|
|
precise float fragment_unnamed_580 = fragment_unnamed_579 * fragment_unnamed_579;
|
|
float fragment_unnamed_584 = mad(mad(fragment_unnamed_580, 0.087292902171611785888671875f, -0.3018949925899505615234375f), fragment_unnamed_580, 1.0f);
|
|
precise float fragment_unnamed_585 = fragment_unnamed_579 * fragment_unnamed_584;
|
|
precise float fragment_unnamed_586 = (-0.0f) - fragment_unnamed_584;
|
|
float fragment_unnamed_592 = asfloat(fragment_unnamed_575 ? asuint(fragment_unnamed_585) : asuint(mad(fragment_unnamed_586, fragment_unnamed_579, 1.57079637050628662109375f)));
|
|
precise float fragment_unnamed_594 = (-0.0f) - fragment_unnamed_592;
|
|
precise float fragment_unnamed_610 = (-0.0f) - clamp(mad(mad(asfloat((fragment_unnamed_560 >= 0.0f) ? 1078530011u : 3226013659u), asfloat(((fragment_unnamed_561 < 0.0f) ? 4294967295u : 0u) & 1065353216u), (fragment_unnamed_573 < 0.0f) ? fragment_unnamed_594 : fragment_unnamed_592), 0.15915493667125701904296875f, 0.5f), 0.0f, 1.0f);
|
|
precise float fragment_unnamed_611 = fragment_unnamed_610 + 1.0f;
|
|
precise float fragment_unnamed_612 = (-0.0f) - fragment_unnamed_572;
|
|
precise float fragment_unnamed_613 = fragment_unnamed_612 + 1.0f;
|
|
float fragment_unnamed_617 = asfloat((fragment_unnamed_549 < 0.0f) ? asuint(fragment_unnamed_613) : asuint(fragment_unnamed_572));
|
|
float fragment_unnamed_696;
|
|
float fragment_unnamed_697;
|
|
float fragment_unnamed_698;
|
|
if (fragment_unnamed_249)
|
|
{
|
|
precise float fragment_unnamed_638 = min(fragment_unnamed_279, fragment_unnamed_611) * fragment_uniform_buffer_0[27u].x;
|
|
precise float fragment_unnamed_639 = min(fragment_unnamed_280, fragment_unnamed_617) * fragment_uniform_buffer_0[27u].y;
|
|
precise float fragment_unnamed_659 = min(fragment_unnamed_279, mad(fragment_unnamed_260, -0.3333333432674407958984375f, fragment_unnamed_611)) * fragment_uniform_buffer_0[27u].x;
|
|
precise float fragment_unnamed_660 = min(fragment_unnamed_280, mad(fragment_unnamed_261, -0.3333333432674407958984375f, fragment_unnamed_617)) * fragment_uniform_buffer_0[27u].y;
|
|
precise float fragment_unnamed_671 = min(fragment_unnamed_279, mad(fragment_unnamed_262, -0.666666686534881591796875f, fragment_unnamed_611)) * fragment_uniform_buffer_0[27u].x;
|
|
precise float fragment_unnamed_672 = min(fragment_unnamed_280, mad(fragment_unnamed_263, -0.666666686534881591796875f, fragment_unnamed_617)) * fragment_uniform_buffer_0[27u].y;
|
|
fragment_unnamed_696 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float3(fragment_unnamed_638, fragment_unnamed_639, fragment_unnamed_282), fragment_uniform_buffer_0[4u].x).x;
|
|
fragment_unnamed_697 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float3(fragment_unnamed_659, fragment_unnamed_660, fragment_unnamed_282), fragment_uniform_buffer_0[4u].x).y;
|
|
fragment_unnamed_698 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float3(fragment_unnamed_671, fragment_unnamed_672, fragment_unnamed_282), fragment_uniform_buffer_0[4u].x).z;
|
|
}
|
|
else
|
|
{
|
|
precise float fragment_unnamed_685 = min(fragment_unnamed_289, fragment_unnamed_611) * fragment_uniform_buffer_0[27u].x;
|
|
precise float fragment_unnamed_686 = min(fragment_unnamed_290, fragment_unnamed_617) * fragment_uniform_buffer_0[27u].y;
|
|
float4 fragment_unnamed_691 = _LensFlareScreenSpaceBloomMipTexture.SampleBias(S0, float3(fragment_unnamed_685, fragment_unnamed_686, fragment_unnamed_282), fragment_uniform_buffer_0[4u].x);
|
|
fragment_unnamed_696 = fragment_unnamed_691.x;
|
|
fragment_unnamed_697 = fragment_unnamed_691.y;
|
|
fragment_unnamed_698 = fragment_unnamed_691.z;
|
|
}
|
|
precise float fragment_unnamed_704 = fragment_unnamed_696 * fragment_uniform_buffer_0[113u].y;
|
|
precise float fragment_unnamed_705 = fragment_unnamed_697 * fragment_uniform_buffer_0[113u].z;
|
|
precise float fragment_unnamed_706 = fragment_unnamed_698 * fragment_uniform_buffer_0[113u].w;
|
|
frontier_phi_23_pred = mad(fragment_unnamed_706, fragment_unnamed_548, fragment_unnamed_328);
|
|
frontier_phi_23_pred_1 = mad(fragment_unnamed_705, fragment_unnamed_548, fragment_unnamed_326);
|
|
frontier_phi_23_pred_2 = mad(fragment_unnamed_704, fragment_unnamed_548, fragment_unnamed_324);
|
|
}
|
|
else
|
|
{
|
|
frontier_phi_23_pred = fragment_unnamed_328;
|
|
frontier_phi_23_pred_1 = fragment_unnamed_326;
|
|
frontier_phi_23_pred_2 = fragment_unnamed_324;
|
|
}
|
|
fragment_unnamed_329 = frontier_phi_23_pred;
|
|
fragment_unnamed_327 = frontier_phi_23_pred_1;
|
|
fragment_unnamed_325 = frontier_phi_23_pred_2;
|
|
fragment_unnamed_312 = fragment_unnamed_313;
|
|
fragment_unnamed_314 = fragment_unnamed_315;
|
|
fragment_unnamed_316 = fragment_unnamed_317;
|
|
fragment_unnamed_318 = fragment_unnamed_319;
|
|
fragment_unnamed_320 = fragment_unnamed_321;
|
|
fragment_unnamed_322 = fragment_unnamed_323;
|
|
fragment_unnamed_324 = fragment_unnamed_325;
|
|
fragment_unnamed_326 = fragment_unnamed_327;
|
|
fragment_unnamed_328 = fragment_unnamed_329;
|
|
fragment_unnamed_330++;
|
|
continue;
|
|
}
|
|
}
|
|
precise float fragment_unnamed_362 = fragment_unnamed_312 + fragment_unnamed_318;
|
|
precise float fragment_unnamed_363 = fragment_unnamed_314 + fragment_unnamed_320;
|
|
precise float fragment_unnamed_364 = fragment_unnamed_316 + fragment_unnamed_322;
|
|
precise float fragment_unnamed_365 = fragment_unnamed_228 * fragment_unnamed_324;
|
|
precise float fragment_unnamed_366 = fragment_unnamed_228 * fragment_unnamed_326;
|
|
precise float fragment_unnamed_367 = fragment_unnamed_228 * fragment_unnamed_328;
|
|
fragment_unnamed_337 = mad(fragment_unnamed_364, fragment_unnamed_239, fragment_unnamed_367);
|
|
fragment_unnamed_339 = mad(fragment_unnamed_363, fragment_unnamed_239, fragment_unnamed_366);
|
|
fragment_unnamed_341 = mad(fragment_unnamed_362, fragment_unnamed_239, fragment_unnamed_365);
|
|
}
|
|
else
|
|
{
|
|
fragment_unnamed_337 = asfloat(0u);
|
|
fragment_unnamed_339 = asfloat(0u);
|
|
fragment_unnamed_341 = asfloat(0u);
|
|
}
|
|
precise float fragment_unnamed_343 = fragment_unnamed_184 + fragment_unnamed_341;
|
|
precise float fragment_unnamed_344 = fragment_unnamed_182 + fragment_unnamed_339;
|
|
precise float fragment_unnamed_345 = fragment_unnamed_180 + fragment_unnamed_337;
|
|
precise float fragment_unnamed_351 = fragment_unnamed_343 * fragment_uniform_buffer_0[108u].x;
|
|
precise float fragment_unnamed_352 = fragment_unnamed_344 * fragment_uniform_buffer_0[108u].x;
|
|
precise float fragment_unnamed_353 = fragment_unnamed_345 * fragment_uniform_buffer_0[108u].x;
|
|
precise float fragment_unnamed_354 = asfloat(1065353216u) * fragment_uniform_buffer_0[108u].x;
|
|
fragment_output_0.x = fragment_unnamed_351;
|
|
fragment_output_0.y = fragment_unnamed_352;
|
|
fragment_output_0.z = fragment_unnamed_353;
|
|
fragment_output_0.w = fragment_unnamed_354;
|
|
}
|
|
|
|
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
|
|
{
|
|
fragment_uniform_buffer_0[27] = float4(_RTHandleScale[0], _RTHandleScale[1], _RTHandleScale[2], _RTHandleScale[3]);
|
|
|
|
fragment_uniform_buffer_0[92] = float4(_ScreenSize[0], _ScreenSize[1], _ScreenSize[2], _ScreenSize[3]);
|
|
|
|
fragment_uniform_buffer_0[106] = float4(_LensFlareScreenSpaceBloomMipTexture_TexelSize[0], _LensFlareScreenSpaceBloomMipTexture_TexelSize[1], _LensFlareScreenSpaceBloomMipTexture_TexelSize[2], _LensFlareScreenSpaceBloomMipTexture_TexelSize[3]);
|
|
|
|
fragment_uniform_buffer_0[108] = float4(_LensFlareScreenSpaceParams1[0], _LensFlareScreenSpaceParams1[1], _LensFlareScreenSpaceParams1[2], _LensFlareScreenSpaceParams1[3]);
|
|
|
|
fragment_uniform_buffer_0[109] = float4(_LensFlareScreenSpaceParams2[0], _LensFlareScreenSpaceParams2[1], _LensFlareScreenSpaceParams2[2], _LensFlareScreenSpaceParams2[3]);
|
|
|
|
fragment_uniform_buffer_0[110] = float4(_LensFlareScreenSpaceParams3[0], _LensFlareScreenSpaceParams3[1], _LensFlareScreenSpaceParams3[2], _LensFlareScreenSpaceParams3[3]);
|
|
|
|
fragment_uniform_buffer_0[111] = float4(_LensFlareScreenSpaceParams4[0], _LensFlareScreenSpaceParams4[1], _LensFlareScreenSpaceParams4[2], _LensFlareScreenSpaceParams4[3]);
|
|
|
|
fragment_uniform_buffer_0[112] = float4(_LensFlareScreenSpaceParams5[0], _LensFlareScreenSpaceParams5[1], _LensFlareScreenSpaceParams5[2], _LensFlareScreenSpaceParams5[3]);
|
|
|
|
fragment_uniform_buffer_0[113] = float4(fragment_uniform_buffer_0[113][0], _LensFlareScreenSpaceTintColor[0], _LensFlareScreenSpaceTintColor[1], _LensFlareScreenSpaceTintColor[2]);
|
|
|
|
gl_Layer = stage_input.gl_Layer;
|
|
fragment_input_1 = stage_input.fragment_input_1;
|
|
frag_main();
|
|
Fragment_Stage_Output stage_output;
|
|
stage_output.fragment_output_0 = fragment_output_0;
|
|
return stage_output;
|
|
}
|
|
|
|
#endif // STEREO_INSTANCING_ON
|
|
|
|
|
|
ENDHLSL
|
|
}
|
|
Pass
|
|
{
|
|
Name "LensFlareScreenSpace Write to BloomTexture"
|
|
Tags { "LIGHTMODE" = "Forward" "RenderPipeline" = "UniversalPipeline" "RenderQueue" = "Transparent" }
|
|
Blend One One, One One
|
|
ZTest Always
|
|
ZWrite Off
|
|
Cull Off
|
|
GpuProgramID 327239
|
|
|
|
HLSLPROGRAM
|
|
|
|
// https://docs.unity3d.com/Manual/SL-PragmaDirectives.html
|
|
#pragma vertex vert
|
|
#pragma fragment frag
|
|
#pragma target 4.0
|
|
#pragma multi_compile _ STEREO_INSTANCING_ON
|
|
|
|
|
|
#ifndef STEREO_INSTANCING_ON
|
|
#define ANY_SHADER_VARIANT_ACTIVE
|
|
|
|
static float4 gl_Position;
|
|
static int gl_VertexIndex;
|
|
static int gl_BaseVertexARB;
|
|
static float2 vertex_output_1;
|
|
|
|
struct Vertex_Stage_Input
|
|
{
|
|
uint gl_VertexIndex : SV_VertexID;
|
|
uint gl_BaseVertexARB : SV_StartVertexLocation;
|
|
};
|
|
|
|
struct Vertex_Stage_Output
|
|
{
|
|
float2 vertex_output_1 : TEXCOORD; // TEXCOORD
|
|
float4 gl_Position : SV_Position;
|
|
};
|
|
|
|
void vert_main()
|
|
{
|
|
uint vertex_unnamed_19 = (uint(gl_VertexIndex) - uint(gl_BaseVertexARB)) & 1u;
|
|
uint vertex_unnamed_24 = (uint(gl_VertexIndex) - uint(gl_BaseVertexARB)) >> 1u;
|
|
float vertex_unnamed_29 = float(vertex_unnamed_24);
|
|
precise float vertex_unnamed_32 = (-0.0f) - float((vertex_unnamed_19 + vertex_unnamed_24) & 1u);
|
|
precise float vertex_unnamed_34 = vertex_unnamed_32 + 1.0f;
|
|
precise float vertex_unnamed_36 = (-0.0f) - vertex_unnamed_34;
|
|
precise float vertex_unnamed_37 = vertex_unnamed_36 + 1.0f;
|
|
vertex_output_1.x = vertex_unnamed_29;
|
|
vertex_output_1.y = vertex_unnamed_37;
|
|
gl_Position.x = mad(vertex_unnamed_29, 2.0f, -1.0f);
|
|
gl_Position.y = mad(float((((-vertex_unnamed_19) + (-vertex_unnamed_24)) + 1u) & 1u), 2.0f, -1.0f);
|
|
gl_Position.z = 1.0f;
|
|
gl_Position.w = 1.0f;
|
|
}
|
|
|
|
Vertex_Stage_Output vert(Vertex_Stage_Input stage_input)
|
|
{
|
|
gl_VertexIndex = int(stage_input.gl_VertexIndex + stage_input.gl_BaseVertexARB);
|
|
gl_BaseVertexARB = stage_input.gl_BaseVertexARB;
|
|
vert_main();
|
|
Vertex_Stage_Output stage_output;
|
|
stage_output.gl_Position = gl_Position;
|
|
stage_output.vertex_output_1 = vertex_output_1;
|
|
return stage_output;
|
|
}
|
|
|
|
#endif // !STEREO_INSTANCING_ON
|
|
|
|
|
|
#ifdef STEREO_INSTANCING_ON
|
|
#define ANY_SHADER_VARIANT_ACTIVE
|
|
|
|
static float4 gl_Position;
|
|
static uint gl_Layer;
|
|
static int gl_VertexIndex;
|
|
static int gl_InstanceIndex;
|
|
static int gl_BaseVertexARB;
|
|
static int gl_BaseInstanceARB;
|
|
static float2 vertex_output_1;
|
|
|
|
struct Vertex_Stage_Input
|
|
{
|
|
uint gl_VertexIndex : SV_VertexID;
|
|
uint gl_InstanceIndex : SV_InstanceID;
|
|
uint gl_BaseVertexARB : SV_StartVertexLocation;
|
|
uint gl_BaseInstanceARB : SV_StartInstanceLocation;
|
|
};
|
|
|
|
struct Vertex_Stage_Output
|
|
{
|
|
float2 vertex_output_1 : TEXCOORD; // TEXCOORD
|
|
float4 gl_Position : SV_Position;
|
|
uint gl_Layer : SV_RenderTargetArrayIndex;
|
|
};
|
|
|
|
void vert_main()
|
|
{
|
|
uint vertex_unnamed_22 = (uint(gl_VertexIndex) - uint(gl_BaseVertexARB)) & 1u;
|
|
uint vertex_unnamed_27 = (uint(gl_VertexIndex) - uint(gl_BaseVertexARB)) >> 1u;
|
|
float vertex_unnamed_32 = float(vertex_unnamed_27);
|
|
precise float vertex_unnamed_35 = (-0.0f) - float((vertex_unnamed_22 + vertex_unnamed_27) & 1u);
|
|
precise float vertex_unnamed_37 = vertex_unnamed_35 + 1.0f;
|
|
precise float vertex_unnamed_39 = (-0.0f) - vertex_unnamed_37;
|
|
precise float vertex_unnamed_40 = vertex_unnamed_39 + 1.0f;
|
|
vertex_output_1.x = vertex_unnamed_32;
|
|
vertex_output_1.y = vertex_unnamed_40;
|
|
gl_Position.x = mad(vertex_unnamed_32, 2.0f, -1.0f);
|
|
gl_Position.y = mad(float((((-vertex_unnamed_22) + (-vertex_unnamed_27)) + 1u) & 1u), 2.0f, -1.0f);
|
|
gl_Position.z = 1.0f;
|
|
gl_Position.w = 1.0f;
|
|
gl_Layer = int((uint(gl_InstanceIndex) - uint(gl_BaseInstanceARB)) & 1u);
|
|
}
|
|
|
|
Vertex_Stage_Output vert(Vertex_Stage_Input stage_input)
|
|
{
|
|
gl_VertexIndex = int(stage_input.gl_VertexIndex + stage_input.gl_BaseVertexARB);
|
|
gl_InstanceIndex = int(stage_input.gl_InstanceIndex + stage_input.gl_BaseInstanceARB);
|
|
gl_BaseVertexARB = stage_input.gl_BaseVertexARB;
|
|
gl_BaseInstanceARB = stage_input.gl_BaseInstanceARB;
|
|
vert_main();
|
|
Vertex_Stage_Output stage_output;
|
|
stage_output.gl_Position = gl_Position;
|
|
stage_output.gl_Layer = gl_Layer;
|
|
stage_output.vertex_output_1 = vertex_output_1;
|
|
return stage_output;
|
|
}
|
|
|
|
#endif // STEREO_INSTANCING_ON
|
|
|
|
|
|
#ifndef STEREO_INSTANCING_ON
|
|
#define ANY_SHADER_VARIANT_ACTIVE
|
|
|
|
float4 _RTHandleScale;
|
|
float4 _ScreenSize;
|
|
|
|
static float4 fragment_uniform_buffer_0[124];
|
|
Texture2D<float4> _LensFlareScreenSpaceResultTexture;
|
|
SamplerState S0;
|
|
|
|
static float2 fragment_input_1;
|
|
static float4 fragment_output_0;
|
|
|
|
struct Fragment_Stage_Input
|
|
{
|
|
float2 fragment_input_1 : TEXCOORD; // TEXCOORD
|
|
};
|
|
|
|
struct Fragment_Stage_Output
|
|
{
|
|
float4 fragment_output_0 : SV_Target0;
|
|
};
|
|
|
|
void frag_main()
|
|
{
|
|
precise float fragment_unnamed_34 = (-0.0f) - fragment_uniform_buffer_0[123u].z;
|
|
precise float fragment_unnamed_37 = (-0.0f) - fragment_uniform_buffer_0[123u].w;
|
|
float4 fragment_unnamed_61 = _LensFlareScreenSpaceResultTexture.SampleBias(S0, float2(min(mad(fragment_unnamed_34, 0.5f, fragment_uniform_buffer_0[28u].x), fragment_input_1.x), min(mad(fragment_unnamed_37, 0.5f, fragment_uniform_buffer_0[28u].y), fragment_input_1.y)), fragment_uniform_buffer_0[4u].x);
|
|
fragment_output_0.x = fragment_unnamed_61.x;
|
|
fragment_output_0.y = fragment_unnamed_61.y;
|
|
fragment_output_0.z = fragment_unnamed_61.z;
|
|
fragment_output_0.w = 1.0f;
|
|
}
|
|
|
|
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
|
|
{
|
|
fragment_uniform_buffer_0[28] = float4(_RTHandleScale[0], _RTHandleScale[1], _RTHandleScale[2], _RTHandleScale[3]);
|
|
|
|
fragment_uniform_buffer_0[123] = float4(_ScreenSize[0], _ScreenSize[1], _ScreenSize[2], _ScreenSize[3]);
|
|
|
|
fragment_input_1 = stage_input.fragment_input_1;
|
|
frag_main();
|
|
Fragment_Stage_Output stage_output;
|
|
stage_output.fragment_output_0 = fragment_output_0;
|
|
return stage_output;
|
|
}
|
|
|
|
#endif // !STEREO_INSTANCING_ON
|
|
|
|
|
|
#ifdef STEREO_INSTANCING_ON
|
|
#define ANY_SHADER_VARIANT_ACTIVE
|
|
|
|
float4 _RTHandleScale;
|
|
float4 _ScreenSize;
|
|
|
|
static float4 fragment_uniform_buffer_0[93];
|
|
Texture2DArray<float4> _LensFlareScreenSpaceResultTexture;
|
|
SamplerState S0;
|
|
|
|
static uint gl_Layer;
|
|
static float2 fragment_input_1;
|
|
static float4 fragment_output_0;
|
|
|
|
struct Fragment_Stage_Input
|
|
{
|
|
float2 fragment_input_1 : TEXCOORD; // TEXCOORD
|
|
uint gl_Layer : SV_RenderTargetArrayIndex;
|
|
};
|
|
|
|
struct Fragment_Stage_Output
|
|
{
|
|
float4 fragment_output_0 : SV_Target0;
|
|
};
|
|
|
|
void frag_main()
|
|
{
|
|
precise float fragment_unnamed_36 = (-0.0f) - fragment_uniform_buffer_0[92u].z;
|
|
precise float fragment_unnamed_39 = (-0.0f) - fragment_uniform_buffer_0[92u].w;
|
|
float4 fragment_unnamed_65 = _LensFlareScreenSpaceResultTexture.SampleBias(S0, float3(min(mad(fragment_unnamed_36, 0.5f, fragment_uniform_buffer_0[27u].x), fragment_input_1.x), min(mad(fragment_unnamed_39, 0.5f, fragment_uniform_buffer_0[27u].y), fragment_input_1.y), float(uint(gl_Layer))), fragment_uniform_buffer_0[4u].x);
|
|
fragment_output_0.x = fragment_unnamed_65.x;
|
|
fragment_output_0.y = fragment_unnamed_65.y;
|
|
fragment_output_0.z = fragment_unnamed_65.z;
|
|
fragment_output_0.w = 1.0f;
|
|
}
|
|
|
|
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
|
|
{
|
|
fragment_uniform_buffer_0[27] = float4(_RTHandleScale[0], _RTHandleScale[1], _RTHandleScale[2], _RTHandleScale[3]);
|
|
|
|
fragment_uniform_buffer_0[92] = float4(_ScreenSize[0], _ScreenSize[1], _ScreenSize[2], _ScreenSize[3]);
|
|
|
|
gl_Layer = stage_input.gl_Layer;
|
|
fragment_input_1 = stage_input.fragment_input_1;
|
|
frag_main();
|
|
Fragment_Stage_Output stage_output;
|
|
stage_output.fragment_output_0 = fragment_output_0;
|
|
return stage_output;
|
|
}
|
|
|
|
#endif // STEREO_INSTANCING_ON
|
|
|
|
|
|
ENDHLSL
|
|
}
|
|
}
|
|
}
|