Shader "Hidden/Universal Render Pipeline/XR/XRMotionVector" { Properties { } SubShader { Tags { "RenderPipeline" = "UniversalPipeline" } Pass { Name "XR Camera MotionVectors" Tags { "RenderPipeline" = "UniversalPipeline" } Cull Off Stencil { Ref 1 ReadMask 1 WriteMask 1 Comp NotEqual Pass Keep Fail Keep ZFail Keep } GpuProgramID 5101 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 float4x4 unity_MatrixInvVP; float4x4 _PrevViewProjMatrix; float4x4 _NonJitteredViewProjMatrix; static float4 vertex_uniform_buffer_0[98]; static float4 gl_Position; static int gl_VertexIndex; static int gl_BaseVertexARB; static float4 vertex_output_1; static float4 vertex_output_2; struct Vertex_Stage_Input { uint gl_VertexIndex : SV_VertexID; uint gl_BaseVertexARB : SV_StartVertexLocation; }; struct Vertex_Stage_Output { float4 vertex_output_1 : TEXCOORD; // TEXCOORD float4 vertex_output_2 : TEXCOORD1; // TEXCOORD_1 float4 gl_Position : SV_Position; }; void vert_main() { float vertex_unnamed_34 = mad(float(((uint(gl_VertexIndex) - uint(gl_BaseVertexARB)) << 1u) & 2u), 2.0f, -1.0f); float vertex_unnamed_37 = mad(float((uint(gl_VertexIndex) - uint(gl_BaseVertexARB)) & 2u), 2.0f, -1.0f); gl_Position.x = vertex_unnamed_34; gl_Position.y = vertex_unnamed_37; gl_Position.z = 0.0f; gl_Position.w = 1.0f; precise float vertex_unnamed_55 = vertex_unnamed_37 * vertex_uniform_buffer_0[84u].x; precise float vertex_unnamed_56 = vertex_unnamed_37 * vertex_uniform_buffer_0[84u].y; precise float vertex_unnamed_57 = vertex_unnamed_37 * vertex_uniform_buffer_0[84u].z; precise float vertex_unnamed_58 = vertex_unnamed_37 * vertex_uniform_buffer_0[84u].w; precise float vertex_unnamed_77 = mad(vertex_uniform_buffer_0[83u].x, vertex_unnamed_34, vertex_unnamed_55) + vertex_uniform_buffer_0[86u].x; precise float vertex_unnamed_78 = mad(vertex_uniform_buffer_0[83u].y, vertex_unnamed_34, vertex_unnamed_56) + vertex_uniform_buffer_0[86u].y; precise float vertex_unnamed_79 = mad(vertex_uniform_buffer_0[83u].z, vertex_unnamed_34, vertex_unnamed_57) + vertex_uniform_buffer_0[86u].z; precise float vertex_unnamed_80 = mad(vertex_uniform_buffer_0[83u].w, vertex_unnamed_34, vertex_unnamed_58) + vertex_uniform_buffer_0[86u].w; precise float vertex_unnamed_81 = vertex_unnamed_77 / vertex_unnamed_80; precise float vertex_unnamed_82 = vertex_unnamed_78 / vertex_unnamed_80; precise float vertex_unnamed_83 = vertex_unnamed_79 / vertex_unnamed_80; precise float vertex_unnamed_91 = vertex_unnamed_82 * vertex_uniform_buffer_0[95u].x; precise float vertex_unnamed_92 = vertex_unnamed_82 * vertex_uniform_buffer_0[95u].y; precise float vertex_unnamed_93 = vertex_unnamed_82 * vertex_uniform_buffer_0[95u].z; precise float vertex_unnamed_94 = vertex_unnamed_82 * vertex_uniform_buffer_0[95u].w; precise float vertex_unnamed_124 = mad(vertex_uniform_buffer_0[96u].x, vertex_unnamed_83, mad(vertex_uniform_buffer_0[94u].x, vertex_unnamed_81, vertex_unnamed_91)) + vertex_uniform_buffer_0[97u].x; precise float vertex_unnamed_125 = mad(vertex_uniform_buffer_0[96u].y, vertex_unnamed_83, mad(vertex_uniform_buffer_0[94u].y, vertex_unnamed_81, vertex_unnamed_92)) + vertex_uniform_buffer_0[97u].y; precise float vertex_unnamed_126 = mad(vertex_uniform_buffer_0[96u].z, vertex_unnamed_83, mad(vertex_uniform_buffer_0[94u].z, vertex_unnamed_81, vertex_unnamed_93)) + vertex_uniform_buffer_0[97u].z; precise float vertex_unnamed_127 = mad(vertex_uniform_buffer_0[96u].w, vertex_unnamed_83, mad(vertex_uniform_buffer_0[94u].w, vertex_unnamed_81, vertex_unnamed_94)) + vertex_uniform_buffer_0[97u].w; vertex_output_1.x = vertex_unnamed_124; vertex_output_1.y = vertex_unnamed_125; vertex_output_1.z = vertex_unnamed_126; vertex_output_1.w = vertex_unnamed_127; precise float vertex_unnamed_139 = vertex_unnamed_82 * vertex_uniform_buffer_0[91u].x; precise float vertex_unnamed_140 = vertex_unnamed_82 * vertex_uniform_buffer_0[91u].y; precise float vertex_unnamed_141 = vertex_unnamed_82 * vertex_uniform_buffer_0[91u].z; precise float vertex_unnamed_142 = vertex_unnamed_82 * vertex_uniform_buffer_0[91u].w; precise float vertex_unnamed_172 = mad(vertex_uniform_buffer_0[92u].x, vertex_unnamed_83, mad(vertex_uniform_buffer_0[90u].x, vertex_unnamed_81, vertex_unnamed_139)) + vertex_uniform_buffer_0[93u].x; precise float vertex_unnamed_173 = mad(vertex_uniform_buffer_0[92u].y, vertex_unnamed_83, mad(vertex_uniform_buffer_0[90u].y, vertex_unnamed_81, vertex_unnamed_140)) + vertex_uniform_buffer_0[93u].y; precise float vertex_unnamed_174 = mad(vertex_uniform_buffer_0[92u].z, vertex_unnamed_83, mad(vertex_uniform_buffer_0[90u].z, vertex_unnamed_81, vertex_unnamed_141)) + vertex_uniform_buffer_0[93u].z; precise float vertex_unnamed_175 = mad(vertex_uniform_buffer_0[92u].w, vertex_unnamed_83, mad(vertex_uniform_buffer_0[90u].w, vertex_unnamed_81, vertex_unnamed_142)) + vertex_uniform_buffer_0[93u].w; vertex_output_2.x = vertex_unnamed_172; vertex_output_2.y = vertex_unnamed_173; vertex_output_2.z = vertex_unnamed_174; vertex_output_2.w = vertex_unnamed_175; } Vertex_Stage_Output vert(Vertex_Stage_Input stage_input) { vertex_uniform_buffer_0[83] = float4(unity_MatrixInvVP[0][0], unity_MatrixInvVP[1][0], unity_MatrixInvVP[2][0], unity_MatrixInvVP[3][0]); vertex_uniform_buffer_0[84] = float4(unity_MatrixInvVP[0][1], unity_MatrixInvVP[1][1], unity_MatrixInvVP[2][1], unity_MatrixInvVP[3][1]); vertex_uniform_buffer_0[85] = float4(unity_MatrixInvVP[0][2], unity_MatrixInvVP[1][2], unity_MatrixInvVP[2][2], unity_MatrixInvVP[3][2]); vertex_uniform_buffer_0[86] = float4(unity_MatrixInvVP[0][3], unity_MatrixInvVP[1][3], unity_MatrixInvVP[2][3], unity_MatrixInvVP[3][3]); vertex_uniform_buffer_0[90] = float4(_PrevViewProjMatrix[0][0], _PrevViewProjMatrix[1][0], _PrevViewProjMatrix[2][0], _PrevViewProjMatrix[3][0]); vertex_uniform_buffer_0[91] = float4(_PrevViewProjMatrix[0][1], _PrevViewProjMatrix[1][1], _PrevViewProjMatrix[2][1], _PrevViewProjMatrix[3][1]); vertex_uniform_buffer_0[92] = float4(_PrevViewProjMatrix[0][2], _PrevViewProjMatrix[1][2], _PrevViewProjMatrix[2][2], _PrevViewProjMatrix[3][2]); vertex_uniform_buffer_0[93] = float4(_PrevViewProjMatrix[0][3], _PrevViewProjMatrix[1][3], _PrevViewProjMatrix[2][3], _PrevViewProjMatrix[3][3]); vertex_uniform_buffer_0[94] = float4(_NonJitteredViewProjMatrix[0][0], _NonJitteredViewProjMatrix[1][0], _NonJitteredViewProjMatrix[2][0], _NonJitteredViewProjMatrix[3][0]); vertex_uniform_buffer_0[95] = float4(_NonJitteredViewProjMatrix[0][1], _NonJitteredViewProjMatrix[1][1], _NonJitteredViewProjMatrix[2][1], _NonJitteredViewProjMatrix[3][1]); vertex_uniform_buffer_0[96] = float4(_NonJitteredViewProjMatrix[0][2], _NonJitteredViewProjMatrix[1][2], _NonJitteredViewProjMatrix[2][2], _NonJitteredViewProjMatrix[3][2]); vertex_uniform_buffer_0[97] = float4(_NonJitteredViewProjMatrix[0][3], _NonJitteredViewProjMatrix[1][3], _NonJitteredViewProjMatrix[2][3], _NonJitteredViewProjMatrix[3][3]); 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; stage_output.vertex_output_2 = vertex_output_2; return stage_output; } #endif // !STEREO_INSTANCING_ON #ifdef STEREO_INSTANCING_ON #define ANY_SHADER_VARIANT_ACTIVE float4x4 _PrevViewProjMatrixStereo[2]; float4x4 _NonJitteredViewProjMatrixStereo[2]; float4x4 unity_StereoMatrixInvVP[2]; static float4 vertex_uniform_buffer_0[63]; static float4 vertex_uniform_buffer_1[48]; 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 float4 vertex_output_1; static float4 vertex_output_2; 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 { float4 vertex_output_1 : TEXCOORD; // TEXCOORD float4 vertex_output_2 : TEXCOORD1; // TEXCOORD_1 float4 gl_Position : SV_Position; uint gl_Layer : SV_RenderTargetArrayIndex; }; void vert_main() { float vertex_unnamed_42 = mad(float(((uint(gl_VertexIndex) - uint(gl_BaseVertexARB)) << 1u) & 2u), 2.0f, -1.0f); float vertex_unnamed_45 = mad(float((uint(gl_VertexIndex) - uint(gl_BaseVertexARB)) & 2u), 2.0f, -1.0f); gl_Position.x = vertex_unnamed_42; gl_Position.y = vertex_unnamed_45; gl_Position.z = 0.0f; gl_Position.w = 1.0f; uint vertex_unnamed_59 = (uint(gl_InstanceIndex) - uint(gl_BaseInstanceARB)) & 1u; uint vertex_unnamed_60 = vertex_unnamed_59 << 2u; gl_Layer = int(vertex_unnamed_59); uint vertex_unnamed_61 = vertex_unnamed_60 + 41u; precise float vertex_unnamed_70 = vertex_unnamed_45 * vertex_uniform_buffer_1[vertex_unnamed_61].x; precise float vertex_unnamed_71 = vertex_unnamed_45 * vertex_uniform_buffer_1[vertex_unnamed_61].y; precise float vertex_unnamed_72 = vertex_unnamed_45 * vertex_uniform_buffer_1[vertex_unnamed_61].z; precise float vertex_unnamed_73 = vertex_unnamed_45 * vertex_uniform_buffer_1[vertex_unnamed_61].w; uint vertex_unnamed_74 = vertex_unnamed_60 + 40u; uint vertex_unnamed_86 = vertex_unnamed_60 + 43u; precise float vertex_unnamed_94 = mad(vertex_uniform_buffer_1[vertex_unnamed_74].x, vertex_unnamed_42, vertex_unnamed_70) + vertex_uniform_buffer_1[vertex_unnamed_86].x; precise float vertex_unnamed_95 = mad(vertex_uniform_buffer_1[vertex_unnamed_74].y, vertex_unnamed_42, vertex_unnamed_71) + vertex_uniform_buffer_1[vertex_unnamed_86].y; precise float vertex_unnamed_96 = mad(vertex_uniform_buffer_1[vertex_unnamed_74].z, vertex_unnamed_42, vertex_unnamed_72) + vertex_uniform_buffer_1[vertex_unnamed_86].z; precise float vertex_unnamed_97 = mad(vertex_uniform_buffer_1[vertex_unnamed_74].w, vertex_unnamed_42, vertex_unnamed_73) + vertex_uniform_buffer_1[vertex_unnamed_86].w; precise float vertex_unnamed_98 = vertex_unnamed_94 / vertex_unnamed_97; precise float vertex_unnamed_99 = vertex_unnamed_95 / vertex_unnamed_97; precise float vertex_unnamed_100 = vertex_unnamed_96 / vertex_unnamed_97; uint vertex_unnamed_101 = vertex_unnamed_60 + 56u; precise float vertex_unnamed_109 = vertex_unnamed_99 * vertex_uniform_buffer_0[vertex_unnamed_101].x; precise float vertex_unnamed_110 = vertex_unnamed_99 * vertex_uniform_buffer_0[vertex_unnamed_101].y; precise float vertex_unnamed_111 = vertex_unnamed_99 * vertex_uniform_buffer_0[vertex_unnamed_101].z; precise float vertex_unnamed_112 = vertex_unnamed_99 * vertex_uniform_buffer_0[vertex_unnamed_101].w; uint vertex_unnamed_113 = vertex_unnamed_60 + 55u; uint vertex_unnamed_125 = vertex_unnamed_60 + 57u; uint vertex_unnamed_137 = vertex_unnamed_60 + 58u; precise float vertex_unnamed_145 = mad(vertex_uniform_buffer_0[vertex_unnamed_125].x, vertex_unnamed_100, mad(vertex_uniform_buffer_0[vertex_unnamed_113].x, vertex_unnamed_98, vertex_unnamed_109)) + vertex_uniform_buffer_0[vertex_unnamed_137].x; precise float vertex_unnamed_146 = mad(vertex_uniform_buffer_0[vertex_unnamed_125].y, vertex_unnamed_100, mad(vertex_uniform_buffer_0[vertex_unnamed_113].y, vertex_unnamed_98, vertex_unnamed_110)) + vertex_uniform_buffer_0[vertex_unnamed_137].y; precise float vertex_unnamed_147 = mad(vertex_uniform_buffer_0[vertex_unnamed_125].z, vertex_unnamed_100, mad(vertex_uniform_buffer_0[vertex_unnamed_113].z, vertex_unnamed_98, vertex_unnamed_111)) + vertex_uniform_buffer_0[vertex_unnamed_137].z; precise float vertex_unnamed_148 = mad(vertex_uniform_buffer_0[vertex_unnamed_125].w, vertex_unnamed_100, mad(vertex_uniform_buffer_0[vertex_unnamed_113].w, vertex_unnamed_98, vertex_unnamed_112)) + vertex_uniform_buffer_0[vertex_unnamed_137].w; vertex_output_1.x = vertex_unnamed_145; vertex_output_1.y = vertex_unnamed_146; vertex_output_1.z = vertex_unnamed_147; vertex_output_1.w = vertex_unnamed_148; uint vertex_unnamed_153 = vertex_unnamed_60 + 48u; precise float vertex_unnamed_160 = vertex_unnamed_99 * vertex_uniform_buffer_0[vertex_unnamed_153].x; precise float vertex_unnamed_161 = vertex_unnamed_99 * vertex_uniform_buffer_0[vertex_unnamed_153].y; precise float vertex_unnamed_162 = vertex_unnamed_99 * vertex_uniform_buffer_0[vertex_unnamed_153].z; precise float vertex_unnamed_163 = vertex_unnamed_99 * vertex_uniform_buffer_0[vertex_unnamed_153].w; uint vertex_unnamed_164 = vertex_unnamed_60 + 47u; uint vertex_unnamed_176 = vertex_unnamed_60 + 49u; uint vertex_unnamed_188 = vertex_unnamed_60 + 50u; precise float vertex_unnamed_196 = mad(vertex_uniform_buffer_0[vertex_unnamed_176].x, vertex_unnamed_100, mad(vertex_uniform_buffer_0[vertex_unnamed_164].x, vertex_unnamed_98, vertex_unnamed_160)) + vertex_uniform_buffer_0[vertex_unnamed_188].x; precise float vertex_unnamed_197 = mad(vertex_uniform_buffer_0[vertex_unnamed_176].y, vertex_unnamed_100, mad(vertex_uniform_buffer_0[vertex_unnamed_164].y, vertex_unnamed_98, vertex_unnamed_161)) + vertex_uniform_buffer_0[vertex_unnamed_188].y; precise float vertex_unnamed_198 = mad(vertex_uniform_buffer_0[vertex_unnamed_176].z, vertex_unnamed_100, mad(vertex_uniform_buffer_0[vertex_unnamed_164].z, vertex_unnamed_98, vertex_unnamed_162)) + vertex_uniform_buffer_0[vertex_unnamed_188].z; precise float vertex_unnamed_199 = mad(vertex_uniform_buffer_0[vertex_unnamed_176].w, vertex_unnamed_100, mad(vertex_uniform_buffer_0[vertex_unnamed_164].w, vertex_unnamed_98, vertex_unnamed_163)) + vertex_uniform_buffer_0[vertex_unnamed_188].w; vertex_output_2.x = vertex_unnamed_196; vertex_output_2.y = vertex_unnamed_197; vertex_output_2.z = vertex_unnamed_198; vertex_output_2.w = vertex_unnamed_199; } Vertex_Stage_Output vert(Vertex_Stage_Input stage_input) { vertex_uniform_buffer_0[47] = float4(_PrevViewProjMatrixStereo[0][0][0], _PrevViewProjMatrixStereo[0][1][0], _PrevViewProjMatrixStereo[0][2][0], _PrevViewProjMatrixStereo[0][3][0]); vertex_uniform_buffer_0[48] = float4(_PrevViewProjMatrixStereo[0][0][1], _PrevViewProjMatrixStereo[0][1][1], _PrevViewProjMatrixStereo[0][2][1], _PrevViewProjMatrixStereo[0][3][1]); vertex_uniform_buffer_0[49] = float4(_PrevViewProjMatrixStereo[0][0][2], _PrevViewProjMatrixStereo[0][1][2], _PrevViewProjMatrixStereo[0][2][2], _PrevViewProjMatrixStereo[0][3][2]); vertex_uniform_buffer_0[50] = float4(_PrevViewProjMatrixStereo[0][0][3], _PrevViewProjMatrixStereo[0][1][3], _PrevViewProjMatrixStereo[0][2][3], _PrevViewProjMatrixStereo[0][3][3]); vertex_uniform_buffer_0[51] = float4(_PrevViewProjMatrixStereo[1][0][0], _PrevViewProjMatrixStereo[1][1][0], _PrevViewProjMatrixStereo[1][2][0], _PrevViewProjMatrixStereo[1][3][0]); vertex_uniform_buffer_0[52] = float4(_PrevViewProjMatrixStereo[1][0][1], _PrevViewProjMatrixStereo[1][1][1], _PrevViewProjMatrixStereo[1][2][1], _PrevViewProjMatrixStereo[1][3][1]); vertex_uniform_buffer_0[53] = float4(_PrevViewProjMatrixStereo[1][0][2], _PrevViewProjMatrixStereo[1][1][2], _PrevViewProjMatrixStereo[1][2][2], _PrevViewProjMatrixStereo[1][3][2]); vertex_uniform_buffer_0[54] = float4(_PrevViewProjMatrixStereo[1][0][3], _PrevViewProjMatrixStereo[1][1][3], _PrevViewProjMatrixStereo[1][2][3], _PrevViewProjMatrixStereo[1][3][3]); vertex_uniform_buffer_0[55] = float4(_NonJitteredViewProjMatrixStereo[0][0][0], _NonJitteredViewProjMatrixStereo[0][1][0], _NonJitteredViewProjMatrixStereo[0][2][0], _NonJitteredViewProjMatrixStereo[0][3][0]); vertex_uniform_buffer_0[56] = float4(_NonJitteredViewProjMatrixStereo[0][0][1], _NonJitteredViewProjMatrixStereo[0][1][1], _NonJitteredViewProjMatrixStereo[0][2][1], _NonJitteredViewProjMatrixStereo[0][3][1]); vertex_uniform_buffer_0[57] = float4(_NonJitteredViewProjMatrixStereo[0][0][2], _NonJitteredViewProjMatrixStereo[0][1][2], _NonJitteredViewProjMatrixStereo[0][2][2], _NonJitteredViewProjMatrixStereo[0][3][2]); vertex_uniform_buffer_0[58] = float4(_NonJitteredViewProjMatrixStereo[0][0][3], _NonJitteredViewProjMatrixStereo[0][1][3], _NonJitteredViewProjMatrixStereo[0][2][3], _NonJitteredViewProjMatrixStereo[0][3][3]); vertex_uniform_buffer_0[59] = float4(_NonJitteredViewProjMatrixStereo[1][0][0], _NonJitteredViewProjMatrixStereo[1][1][0], _NonJitteredViewProjMatrixStereo[1][2][0], _NonJitteredViewProjMatrixStereo[1][3][0]); vertex_uniform_buffer_0[60] = float4(_NonJitteredViewProjMatrixStereo[1][0][1], _NonJitteredViewProjMatrixStereo[1][1][1], _NonJitteredViewProjMatrixStereo[1][2][1], _NonJitteredViewProjMatrixStereo[1][3][1]); vertex_uniform_buffer_0[61] = float4(_NonJitteredViewProjMatrixStereo[1][0][2], _NonJitteredViewProjMatrixStereo[1][1][2], _NonJitteredViewProjMatrixStereo[1][2][2], _NonJitteredViewProjMatrixStereo[1][3][2]); vertex_uniform_buffer_0[62] = float4(_NonJitteredViewProjMatrixStereo[1][0][3], _NonJitteredViewProjMatrixStereo[1][1][3], _NonJitteredViewProjMatrixStereo[1][2][3], _NonJitteredViewProjMatrixStereo[1][3][3]); vertex_uniform_buffer_1[40] = float4(unity_StereoMatrixInvVP[0][0][0], unity_StereoMatrixInvVP[0][1][0], unity_StereoMatrixInvVP[0][2][0], unity_StereoMatrixInvVP[0][3][0]); vertex_uniform_buffer_1[41] = float4(unity_StereoMatrixInvVP[0][0][1], unity_StereoMatrixInvVP[0][1][1], unity_StereoMatrixInvVP[0][2][1], unity_StereoMatrixInvVP[0][3][1]); vertex_uniform_buffer_1[42] = float4(unity_StereoMatrixInvVP[0][0][2], unity_StereoMatrixInvVP[0][1][2], unity_StereoMatrixInvVP[0][2][2], unity_StereoMatrixInvVP[0][3][2]); vertex_uniform_buffer_1[43] = float4(unity_StereoMatrixInvVP[0][0][3], unity_StereoMatrixInvVP[0][1][3], unity_StereoMatrixInvVP[0][2][3], unity_StereoMatrixInvVP[0][3][3]); vertex_uniform_buffer_1[44] = float4(unity_StereoMatrixInvVP[1][0][0], unity_StereoMatrixInvVP[1][1][0], unity_StereoMatrixInvVP[1][2][0], unity_StereoMatrixInvVP[1][3][0]); vertex_uniform_buffer_1[45] = float4(unity_StereoMatrixInvVP[1][0][1], unity_StereoMatrixInvVP[1][1][1], unity_StereoMatrixInvVP[1][2][1], unity_StereoMatrixInvVP[1][3][1]); vertex_uniform_buffer_1[46] = float4(unity_StereoMatrixInvVP[1][0][2], unity_StereoMatrixInvVP[1][1][2], unity_StereoMatrixInvVP[1][2][2], unity_StereoMatrixInvVP[1][3][2]); vertex_uniform_buffer_1[47] = float4(unity_StereoMatrixInvVP[1][0][3], unity_StereoMatrixInvVP[1][1][3], unity_StereoMatrixInvVP[1][2][3], unity_StereoMatrixInvVP[1][3][3]); 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; stage_output.vertex_output_2 = vertex_output_2; return stage_output; } #endif // STEREO_INSTANCING_ON #ifndef STEREO_INSTANCING_ON #define ANY_SHADER_VARIANT_ACTIVE float _SpaceWarpNDCModifier; static float4 fragment_uniform_buffer_0[131]; static float4 fragment_input_1; static float4 fragment_input_2; static float4 fragment_output_0; struct Fragment_Stage_Input { float4 fragment_input_1 : TEXCOORD; // TEXCOORD float4 fragment_input_2 : TEXCOORD1; // TEXCOORD_1 }; struct Fragment_Stage_Output { float4 fragment_output_0 : SV_Target0; }; void frag_main() { precise float fragment_unnamed_23 = 1.0f / fragment_input_2.w; precise float fragment_unnamed_34 = fragment_unnamed_23 * fragment_input_2.x; precise float fragment_unnamed_35 = fragment_unnamed_23 * fragment_input_2.y; precise float fragment_unnamed_36 = fragment_unnamed_23 * fragment_input_2.z; precise float fragment_unnamed_39 = 1.0f / fragment_input_1.w; precise float fragment_unnamed_46 = (-0.0f) - fragment_unnamed_34; precise float fragment_unnamed_48 = (-0.0f) - fragment_unnamed_35; precise float fragment_unnamed_49 = (-0.0f) - fragment_unnamed_36; precise float fragment_unnamed_59 = mad(fragment_input_1.y, fragment_unnamed_39, fragment_unnamed_48) * fragment_uniform_buffer_0[130u].x; fragment_output_0.y = fragment_unnamed_59; fragment_output_0.x = mad(fragment_input_1.x, fragment_unnamed_39, fragment_unnamed_46); fragment_output_0.z = mad(fragment_input_1.z, fragment_unnamed_39, fragment_unnamed_49); fragment_output_0.w = 0.0f; } Fragment_Stage_Output frag(Fragment_Stage_Input stage_input) { fragment_uniform_buffer_0[130] = float4(_SpaceWarpNDCModifier, fragment_uniform_buffer_0[130][1], fragment_uniform_buffer_0[130][2], fragment_uniform_buffer_0[130][3]); fragment_input_1 = stage_input.fragment_input_1; fragment_input_2 = stage_input.fragment_input_2; 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 float _SpaceWarpNDCModifier; static float4 fragment_uniform_buffer_0[100]; static float4 fragment_input_1; static float4 fragment_input_2; static float4 fragment_output_0; struct Fragment_Stage_Input { float4 fragment_input_1 : TEXCOORD; // TEXCOORD float4 fragment_input_2 : TEXCOORD1; // TEXCOORD_1 }; struct Fragment_Stage_Output { float4 fragment_output_0 : SV_Target0; }; void frag_main() { precise float fragment_unnamed_25 = 1.0f / fragment_input_2.w; precise float fragment_unnamed_36 = fragment_unnamed_25 * fragment_input_2.x; precise float fragment_unnamed_37 = fragment_unnamed_25 * fragment_input_2.y; precise float fragment_unnamed_38 = fragment_unnamed_25 * fragment_input_2.z; precise float fragment_unnamed_41 = 1.0f / fragment_input_1.w; precise float fragment_unnamed_48 = (-0.0f) - fragment_unnamed_36; precise float fragment_unnamed_50 = (-0.0f) - fragment_unnamed_37; precise float fragment_unnamed_51 = (-0.0f) - fragment_unnamed_38; precise float fragment_unnamed_61 = mad(fragment_input_1.y, fragment_unnamed_41, fragment_unnamed_50) * fragment_uniform_buffer_0[99u].x; fragment_output_0.y = fragment_unnamed_61; fragment_output_0.x = mad(fragment_input_1.x, fragment_unnamed_41, fragment_unnamed_48); fragment_output_0.z = mad(fragment_input_1.z, fragment_unnamed_41, fragment_unnamed_51); fragment_output_0.w = 0.0f; } Fragment_Stage_Output frag(Fragment_Stage_Input stage_input) { fragment_uniform_buffer_0[99] = float4(_SpaceWarpNDCModifier, fragment_uniform_buffer_0[99][1], fragment_uniform_buffer_0[99][2], fragment_uniform_buffer_0[99][3]); fragment_input_1 = stage_input.fragment_input_1; fragment_input_2 = stage_input.fragment_input_2; frag_main(); Fragment_Stage_Output stage_output; stage_output.fragment_output_0 = fragment_output_0; return stage_output; } #endif // STEREO_INSTANCING_ON ENDHLSL } } }