123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756 |
- Shader /*ase_name*/ "Hidden/Universal/2D Lit" /*end*/
- {
- Properties
- {
- /*ase_props*/
- [HideInInspector][NoScaleOffset] unity_Lightmaps("unity_Lightmaps", 2DArray) = "" {}
- [HideInInspector][NoScaleOffset] unity_LightmapsInd("unity_LightmapsInd", 2DArray) = "" {}
- [HideInInspector][NoScaleOffset] unity_ShadowMasks("unity_ShadowMasks", 2DArray) = "" {}
- }
- SubShader
- {
- /*ase_subshader_options:Name=Additional Options
- Option:Vertex Position:Absolute,Relative:Relative
- Absolute:SetDefine:ASE_ABSOLUTE_VERTEX_POS 1
- Absolute:SetPortName:Sprite Lit:4,Vertex Position
- Relative:RemoveDefine:ASE_ABSOLUTE_VERTEX_POS 1
- Relative:SetPortName:Sprite Lit:4,Vertex Offset
- Option:Debug Display:false,true:false
- true:SetDefine:pragma multi_compile _ DEBUG_DISPLAY
- false,disable:RemoveDefine:pragma multi_compile _ DEBUG_DISPLAY
- Option:External Alpha:false,true:false
- true:SetDefine:pragma multi_compile _ ETC1_EXTERNAL_ALPHA
- false,disable:RemoveDefine:pragma multi_compile _ ETC1_EXTERNAL_ALPHA
- */
- Tags
- {
- "RenderPipeline" = "UniversalPipeline"
- "RenderType" = "Transparent"
- "Queue" = "Transparent+0"
- "UniversalMaterialType" = "Lit"
- "ShaderGraphShader"="true"
- "ShaderGraphTargetId"=""
- }
- Cull Off
- HLSLINCLUDE
- #pragma target 2.0
- #pragma prefer_hlslcc gles
- #pragma exclude_renderers d3d9 // ensure rendering platforms toggle list is visible
- #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
- #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Filtering.hlsl"
- ENDHLSL
- /*ase_pass*/
- Pass
- {
- Name "Sprite Lit"
- Tags
- {
- "LightMode" = "Universal2D"
- }
- Blend SrcAlpha OneMinusSrcAlpha, One OneMinusSrcAlpha
- ZTest LEqual
- ZWrite Off
- Offset 0,0
- ColorMask RGBA
- /*ase_stencil*/
- HLSLPROGRAM
- #pragma vertex vert
- #pragma fragment frag
- #pragma multi_compile _ USE_SHAPE_LIGHT_TYPE_0
- #pragma multi_compile _ USE_SHAPE_LIGHT_TYPE_1
- #pragma multi_compile _ USE_SHAPE_LIGHT_TYPE_2
- #pragma multi_compile _ USE_SHAPE_LIGHT_TYPE_3
- #define _SURFACE_TYPE_TRANSPARENT 1
- #define ATTRIBUTES_NEED_NORMAL
- #define ATTRIBUTES_NEED_TANGENT
- #define ATTRIBUTES_NEED_TEXCOORD0
- #define ATTRIBUTES_NEED_COLOR
- #define VARYINGS_NEED_POSITION_WS
- #define VARYINGS_NEED_TEXCOORD0
- #define VARYINGS_NEED_COLOR
- #define VARYINGS_NEED_SCREENPOSITION
- #define FEATURES_GRAPH_VERTEX
- #define SHADERPASS SHADERPASS_SPRITELIT
- #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Color.hlsl"
- #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl"
- #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
- #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl"
- #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Input.hlsl"
- #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl"
- /*ase_unity_cond_begin:>=20220316*/
- #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRendering.hlsl"
- /*ase_unity_cond_end*/
- /*ase_unity_cond_begin:>=20220316*/
- #if ASE_SRP_VERSION >=140009
- #include_with_pragmas "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRenderingKeywords.hlsl"
- #endif
- /*ase_unity_cond_end*/
- #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ShaderGraphFunctions.hlsl"
- #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/LightingUtility.hlsl"
- #include "Packages/com.unity.render-pipelines.universal/Editor/ShaderGraph/Includes/ShaderPass.hlsl"
- #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/SurfaceData2D.hlsl"
- #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Debug/Debugging2D.hlsl"
- #if USE_SHAPE_LIGHT_TYPE_0
- SHAPE_LIGHT(0)
- #endif
- #if USE_SHAPE_LIGHT_TYPE_1
- SHAPE_LIGHT(1)
- #endif
- #if USE_SHAPE_LIGHT_TYPE_2
- SHAPE_LIGHT(2)
- #endif
- #if USE_SHAPE_LIGHT_TYPE_3
- SHAPE_LIGHT(3)
- #endif
- #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/CombinedShapeLightShared.hlsl"
- /*ase_pragma*/
- /*ase_globals*/
- struct VertexInput
- {
- float4 positionOS : POSITION;
- float3 normal : NORMAL;
- float4 tangent : TANGENT;
- float4 uv0 : TEXCOORD0;
- float4 color : COLOR;
- /*ase_vdata:p=p;n=n;t=t;c=c;uv0=tc0*/
- UNITY_VERTEX_INPUT_INSTANCE_ID
- };
- struct VertexOutput
- {
- float4 positionCS : SV_POSITION;
- float4 texCoord0 : TEXCOORD0;
- float4 color : TEXCOORD1;
- float4 screenPosition : TEXCOORD2;
- float3 positionWS : TEXCOORD3;
- /*ase_interp(4,):sp=sp;uv0=tc0;*/
- UNITY_VERTEX_INPUT_INSTANCE_ID
- UNITY_VERTEX_OUTPUT_STEREO
- };
- #if ETC1_EXTERNAL_ALPHA
- TEXTURE2D(_AlphaTex); SAMPLER(sampler_AlphaTex);
- float _EnableAlphaTexture;
- #endif
- /*ase_funcs*/
- VertexOutput vert( VertexInput v /*ase_vert_input*/ )
- {
- VertexOutput o = (VertexOutput)0;
- UNITY_SETUP_INSTANCE_ID(v);
- UNITY_TRANSFER_INSTANCE_ID(v, o);
- UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
- /*ase_vert_code:v=VertexInput;o=VertexOutput*/
- #ifdef ASE_ABSOLUTE_VERTEX_POS
- float3 defaultVertexValue = v.positionOS.xyz;
- #else
- float3 defaultVertexValue = float3(0, 0, 0);
- #endif
- float3 vertexValue = /*ase_vert_out:Vertex Offset;Float3;4;-1;_Vertex*/defaultVertexValue/*end*/;
- #ifdef ASE_ABSOLUTE_VERTEX_POS
- v.positionOS.xyz = vertexValue;
- #else
- v.positionOS.xyz += vertexValue;
- #endif
- v.normal = /*ase_vert_out:Vertex Normal;Float3;5;-1;_VNormal*/v.normal/*end*/;
- v.tangent.xyz = /*ase_vert_out:Vertex Tangent;Float3;6;-1;_VTangent*/v.tangent.xyz/*end*/;
- VertexPositionInputs vertexInput = GetVertexPositionInputs(v.positionOS.xyz);
- o.positionCS = vertexInput.positionCS;
- o.positionWS = vertexInput.positionWS;
- o.texCoord0 = v.uv0;
- o.color = v.color;
- o.screenPosition = vertexInput.positionNDC;
- return o;
- }
- half4 frag( VertexOutput IN /*ase_frag_input*/ ) : SV_Target
- {
- UNITY_SETUP_INSTANCE_ID(IN);
- UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX(IN);
- /*ase_local_var:wp*/float3 positionWS = IN.positionWS.xyz;
- /*ase_frag_code:IN=VertexOutput*/
- float4 Color = /*ase_frag_out:Color;Float4;1;-1;_Color*/float4( 1, 1, 1, 1 )/*end*/;
- float4 Mask = /*ase_frag_out:Mask;Float4;2;-1;_Mask*/float4(1,1,1,1)/*end*/;
- float3 Normal = /*ase_frag_out:Normal;Float3;3;-1;_Normal*/float3( 0, 0, 1 )/*end*/;
- #if ETC1_EXTERNAL_ALPHA
- float4 alpha = SAMPLE_TEXTURE2D(_AlphaTex, sampler_AlphaTex, IN.texCoord0.xy);
- Color.a = lerp( Color.a, alpha.r, _EnableAlphaTexture);
- #endif
- SurfaceData2D surfaceData;
- InitializeSurfaceData(Color.rgb, Color.a, Mask, surfaceData);
- InputData2D inputData;
- InitializeInputData(IN.texCoord0.xy, half2(IN.screenPosition.xy / IN.screenPosition.w), inputData);
- SETUP_DEBUG_DATA_2D(inputData, positionWS);
- return CombinedShapeLightShared(surfaceData, inputData);
- Color *= IN.color;
- }
- ENDHLSL
- }
- /*ase_pass*/
- Pass
- {
- /*ase_hide_pass:SyncP*/
- Name "Sprite Normal"
- Tags
- {
- "LightMode" = "NormalsRendering"
- }
- Blend SrcAlpha OneMinusSrcAlpha, One OneMinusSrcAlpha
- ZTest LEqual
- ZWrite Off
- Offset 0,0
- ColorMask RGBA
- /*ase_stencil*/
- HLSLPROGRAM
- #pragma vertex vert
- #pragma fragment frag
- #define _SURFACE_TYPE_TRANSPARENT 1
- #define ATTRIBUTES_NEED_NORMAL
- #define ATTRIBUTES_NEED_TANGENT
- #define VARYINGS_NEED_NORMAL_WS
- #define VARYINGS_NEED_TANGENT_WS
- #define FEATURES_GRAPH_VERTEX
- #define SHADERPASS SHADERPASS_SPRITENORMAL
- #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Color.hlsl"
- #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl"
- #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
- #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl"
- #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Input.hlsl"
- #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl"
- /*ase_unity_cond_begin:>=20220316*/
- #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRendering.hlsl"
- /*ase_unity_cond_end*/
- /*ase_unity_cond_begin:>=20220316*/
- #if ASE_SRP_VERSION >=140009
- #include_with_pragmas "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRenderingKeywords.hlsl"
- #endif
- /*ase_unity_cond_end*/
- #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ShaderGraphFunctions.hlsl"
- #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/NormalsRenderingShared.hlsl"
- #include "Packages/com.unity.render-pipelines.universal/Editor/ShaderGraph/Includes/ShaderPass.hlsl"
- /*ase_pragma*/
- /*ase_globals*/
- struct VertexInput
- {
- float4 positionOS : POSITION;
- float3 normal : NORMAL;
- float4 tangent : TANGENT;
- float4 uv0 : TEXCOORD0;
- float4 color : COLOR;
- /*ase_vdata:p=p;n=n;t=t;c=c;uv0=tc0*/
- UNITY_VERTEX_INPUT_INSTANCE_ID
- };
- struct VertexOutput
- {
- float4 positionCS : SV_POSITION;
- float4 texCoord0 : TEXCOORD0;
- float4 color : TEXCOORD1;
- float3 normalWS : TEXCOORD2;
- float4 tangentWS : TEXCOORD3;
- float3 bitangentWS : TEXCOORD4;
- /*ase_interp(5,):sp=sp;uv0=tc0;c=tc1;wn=tc2;wt=tc3;wbt=tc4*/
- UNITY_VERTEX_INPUT_INSTANCE_ID
- UNITY_VERTEX_OUTPUT_STEREO
- };
- /*ase_funcs*/
- VertexOutput vert( VertexInput v /*ase_vert_input*/ )
- {
- VertexOutput o = (VertexOutput)0;
- UNITY_SETUP_INSTANCE_ID(v);
- UNITY_TRANSFER_INSTANCE_ID(v, o);
- UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
- /*ase_vert_code:v=VertexInput;o=VertexOutput*/
- #ifdef ASE_ABSOLUTE_VERTEX_POS
- float3 defaultVertexValue = v.positionOS.xyz;
- #else
- float3 defaultVertexValue = float3(0, 0, 0);
- #endif
- float3 vertexValue = /*ase_vert_out:Vertex Offset;Float3;3;-1;_Vertex*/defaultVertexValue/*end*/;
- #ifdef ASE_ABSOLUTE_VERTEX_POS
- v.positionOS.xyz = vertexValue;
- #else
- v.positionOS.xyz += vertexValue;
- #endif
- v.normal = /*ase_vert_out:Vertex Normal;Float3;4;-1;_VNormal*/v.normal/*end*/;
- v.tangent.xyz = /*ase_vert_out:Vertex Tangent;Float3;5;-1;_VTangent*/v.tangent.xyz/*end*/;
- VertexPositionInputs vertexInput = GetVertexPositionInputs(v.positionOS.xyz);
- o.texCoord0 = v.uv0;
- o.color = v.color;
- o.positionCS = vertexInput.positionCS;
- float3 normalWS = TransformObjectToWorldNormal(v.normal);
- o.normalWS = -GetViewForwardDir();
- float4 tangentWS = float4( TransformObjectToWorldDir(v.tangent.xyz), v.tangent.w);
- o.tangentWS = normalize(tangentWS);
- half crossSign = (tangentWS.w > 0.0 ? 1.0 : -1.0) * GetOddNegativeScale();
- o.bitangentWS = crossSign * cross(normalWS, tangentWS.xyz) * tangentWS.w;
- return o;
- }
- half4 frag( VertexOutput IN /*ase_frag_input*/ ) : SV_Target
- {
- UNITY_SETUP_INSTANCE_ID(IN);
- UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX(IN);
- /*ase_frag_code:IN=VertexOutput*/
- float4 Color = /*ase_frag_out:Color;Float4;1;-1;_Color*/float4( 1, 1, 1, 1 )/*end*/;
- float3 Normal = /*ase_frag_out:Normal;Float3;2;-1;_Normal*/float3( 0, 0, 1 )/*end*/;
- Color *= IN.color;
- return NormalsRenderingShared(Color, Normal, IN.tangentWS.xyz, IN.bitangentWS, IN.normalWS);
- }
- ENDHLSL
- }
- /*ase_pass*/
- Pass
- {
- /*ase_hide_pass:SyncP*/
- Name "Sprite Forward"
- Tags
- {
- "LightMode" = "UniversalForward"
- }
- Blend SrcAlpha OneMinusSrcAlpha, One OneMinusSrcAlpha
- ZTest LEqual
- ZWrite Off
- Offset 0,0
- ColorMask RGBA
- /*ase_stencil*/
- HLSLPROGRAM
- #pragma vertex vert
- #pragma fragment frag
- #define _SURFACE_TYPE_TRANSPARENT 1
- #define ATTRIBUTES_NEED_NORMAL
- #define ATTRIBUTES_NEED_TANGENT
- #define ATTRIBUTES_NEED_TEXCOORD0
- #define ATTRIBUTES_NEED_COLOR
- #define VARYINGS_NEED_POSITION_WS
- #define VARYINGS_NEED_TEXCOORD0
- #define VARYINGS_NEED_COLOR
- #define FEATURES_GRAPH_VERTEX
- #define SHADERPASS SHADERPASS_SPRITEFORWARD
- #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Color.hlsl"
- #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl"
- #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
- #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl"
- #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Input.hlsl"
- #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl"
- /*ase_unity_cond_begin:>=20220316*/
- #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRendering.hlsl"
- /*ase_unity_cond_end*/
- /*ase_unity_cond_begin:>=20220316*/
- #if ASE_SRP_VERSION >=140009
- #include_with_pragmas "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRenderingKeywords.hlsl"
- #endif
- /*ase_unity_cond_end*/
- #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ShaderGraphFunctions.hlsl"
- #include "Packages/com.unity.render-pipelines.universal/Editor/ShaderGraph/Includes/ShaderPass.hlsl"
- #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/SurfaceData2D.hlsl"
- #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Debug/Debugging2D.hlsl"
- /*ase_pragma*/
- /*ase_globals*/
- struct VertexInput
- {
- float4 positionOS : POSITION;
- float3 normal : NORMAL;
- float4 tangent : TANGENT;
- float4 uv0 : TEXCOORD0;
- float4 color : COLOR;
- /*ase_vdata:p=p;n=n;t=t;c=c;uv0=tc0*/
- UNITY_VERTEX_INPUT_INSTANCE_ID
- };
- struct VertexOutput
- {
- float4 positionCS : SV_POSITION;
- float4 texCoord0 : TEXCOORD0;
- float4 color : TEXCOORD1;
- float3 positionWS : TEXCOORD2;
- /*ase_interp(3,):sp=sp;uv0=tc0;c=tc1*/
- UNITY_VERTEX_INPUT_INSTANCE_ID
- UNITY_VERTEX_OUTPUT_STEREO
- };
- #if ETC1_EXTERNAL_ALPHA
- TEXTURE2D( _AlphaTex ); SAMPLER( sampler_AlphaTex );
- float _EnableAlphaTexture;
- #endif
- /*ase_funcs*/
- VertexOutput vert( VertexInput v /*ase_vert_input*/ )
- {
- VertexOutput o = (VertexOutput)0;
- UNITY_SETUP_INSTANCE_ID(v);
- UNITY_TRANSFER_INSTANCE_ID(v, o);
- UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
- /*ase_vert_code:v=VertexInput;o=VertexOutput*/
- #ifdef ASE_ABSOLUTE_VERTEX_POS
- float3 defaultVertexValue = v.positionOS.xyz;
- #else
- float3 defaultVertexValue = float3( 0, 0, 0 );
- #endif
- float3 vertexValue = /*ase_vert_out:Vertex Offset;Float3;3;-1;_Vertex*/defaultVertexValue/*end*/;
- #ifdef ASE_ABSOLUTE_VERTEX_POS
- v.positionOS.xyz = vertexValue;
- #else
- v.positionOS.xyz += vertexValue;
- #endif
- v.normal = /*ase_vert_out:Vertex Normal;Float3;4;-1;_VNormal*/v.normal/*end*/;
- v.tangent.xyz = /*ase_vert_out:Vertex Tangent;Float3;5;-1;_VTangent*/v.tangent.xyz/*end*/;
- VertexPositionInputs vertexInput = GetVertexPositionInputs(v.positionOS.xyz);
- o.positionCS = vertexInput.positionCS;
- o.positionWS = vertexInput.positionWS;
- o.texCoord0 = v.uv0;
- o.color = v.color;
- return o;
- }
- half4 frag( VertexOutput IN /*ase_frag_input*/ ) : SV_Target
- {
- UNITY_SETUP_INSTANCE_ID(IN);
- UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX(IN);
- /*ase_local_var:wp*/float3 positionWS = IN.positionWS.xyz;
- /*ase_frag_code:IN=VertexOutput*/
- float4 Color = /*ase_frag_out:Color;Float4;1;-1;_Color*/float4( 1, 1, 1, 1 )/*end*/;
- #if defined(DEBUG_DISPLAY)
- SurfaceData2D surfaceData;
- InitializeSurfaceData(Color.rgb, Color.a, surfaceData);
- InputData2D inputData;
- InitializeInputData(positionWS.xy, half2(IN.texCoord0.xy), inputData);
- half4 debugColor = 0;
- SETUP_DEBUG_DATA_2D(inputData, positionWS);
- if (CanDebugOverrideOutputColor(surfaceData, inputData, debugColor))
- {
- return debugColor;
- }
- #endif
- #if ETC1_EXTERNAL_ALPHA
- float4 alpha = SAMPLE_TEXTURE2D( _AlphaTex, sampler_AlphaTex, IN.texCoord0.xy );
- Color.a = lerp( Color.a, alpha.r, _EnableAlphaTexture );
- #endif
- Color *= IN.color;
- return Color;
- }
- ENDHLSL
- }
- /*ase_pass*/
- Pass
- {
- /*ase_hide_pass*/
- Name "SceneSelectionPass"
- Tags
- {
- "LightMode" = "SceneSelectionPass"
- }
- Cull Off
- HLSLPROGRAM
- #pragma vertex vert
- #pragma fragment frag
- #define _SURFACE_TYPE_TRANSPARENT 1
- #define ATTRIBUTES_NEED_NORMAL
- #define ATTRIBUTES_NEED_TANGENT
- #define FEATURES_GRAPH_VERTEX
- #define SHADERPASS SHADERPASS_DEPTHONLY
- #define SCENESELECTIONPASS 1
- #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Color.hlsl"
- #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl"
- #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
- #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl"
- #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Input.hlsl"
- #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl"
- /*ase_unity_cond_begin:>=20220316*/
- #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRendering.hlsl"
- /*ase_unity_cond_end*/
- /*ase_unity_cond_begin:>=20220316*/
- #if ASE_SRP_VERSION >=140009
- #include_with_pragmas "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRenderingKeywords.hlsl"
- #endif
- /*ase_unity_cond_end*/
- #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ShaderGraphFunctions.hlsl"
- /*ase_srp_cond_begin:>=140007*/
- #if ASE_SRP_VERSION >=140007
- #include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/DOTS.hlsl"
- #endif
- /*ase_srp_cond_end*/
- #include "Packages/com.unity.render-pipelines.universal/Editor/ShaderGraph/Includes/ShaderPass.hlsl"
- /*ase_pragma*/
- /*ase_globals*/
- struct VertexInput
- {
- float3 positionOS : POSITION;
- float3 normal : NORMAL;
- float4 tangent : TANGENT;
- /*ase_vdata:p=p;n=n;t=t*/
- UNITY_VERTEX_INPUT_INSTANCE_ID
- };
- struct VertexOutput
- {
- float4 positionCS : SV_POSITION;
- /*ase_interp(0,):sp=sp*/
- UNITY_VERTEX_INPUT_INSTANCE_ID
- };
- int _ObjectId;
- int _PassValue;
- /*ase_funcs*/
- VertexOutput vert(VertexInput v /*ase_vert_input*/)
- {
- VertexOutput o = (VertexOutput)0;
- UNITY_SETUP_INSTANCE_ID(v);
- UNITY_TRANSFER_INSTANCE_ID(v, o);
- UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
- /*ase_vert_code:v=VertexInput;o=VertexOutput*/
- #ifdef ASE_ABSOLUTE_VERTEX_POS
- float3 defaultVertexValue = v.positionOS.xyz;
- #else
- float3 defaultVertexValue = float3(0, 0, 0);
- #endif
- float3 vertexValue = /*ase_vert_out:Vertex Offset;Float3;1;-1;_Vertex*/defaultVertexValue/*end*/;
- #ifdef ASE_ABSOLUTE_VERTEX_POS
- v.positionOS.xyz = vertexValue;
- #else
- v.positionOS.xyz += vertexValue;
- #endif
- VertexPositionInputs vertexInput = GetVertexPositionInputs(v.positionOS.xyz);
- float3 positionWS = TransformObjectToWorld(v.positionOS);
- o.positionCS = TransformWorldToHClip(positionWS);
- return o;
- }
- half4 frag(VertexOutput IN/*ase_frag_input*/) : SV_TARGET
- {
- /*ase_frag_code:IN=VertexOutput*/
- float4 Color = /*ase_frag_out:Color;Float4;0;-1;_Color*/float4( 1, 1, 1, 1 )/*end*/;
- half4 outColor = half4(_ObjectId, _PassValue, 1.0, 1.0);
- return outColor;
- }
- ENDHLSL
- }
- /*ase_pass*/
- Pass
- {
- /*ase_hide_pass*/
- Name "ScenePickingPass"
- Tags
- {
- "LightMode" = "Picking"
- }
- Cull Off
- HLSLPROGRAM
- #pragma vertex vert
- #pragma fragment frag
- #define _SURFACE_TYPE_TRANSPARENT 1
- #define ATTRIBUTES_NEED_NORMAL
- #define ATTRIBUTES_NEED_TANGENT
- #define FEATURES_GRAPH_VERTEX
- #define SHADERPASS SHADERPASS_DEPTHONLY
- #define SCENEPICKINGPASS 1
- #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Color.hlsl"
- #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl"
- #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
- #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl"
- #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Input.hlsl"
- #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl"
- /*ase_unity_cond_begin:>=20220316*/
- #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRendering.hlsl"
- /*ase_unity_cond_end*/
- /*ase_unity_cond_begin:>=20220316*/
- #if ASE_SRP_VERSION >=140009
- #include_with_pragmas "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRenderingKeywords.hlsl"
- #endif
- /*ase_unity_cond_end*/
- #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ShaderGraphFunctions.hlsl"
- /*ase_srp_cond_begin:>=140007*/
- #if ASE_SRP_VERSION >=140007
- #include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/DOTS.hlsl"
- #endif
- /*ase_srp_cond_end*/
- #include "Packages/com.unity.render-pipelines.universal/Editor/ShaderGraph/Includes/ShaderPass.hlsl"
- /*ase_pragma*/
- /*ase_globals*/
- struct VertexInput
- {
- float3 positionOS : POSITION;
- float3 normal : NORMAL;
- float4 tangent : TANGENT;
- /*ase_vdata:p=p;n=n;t=t*/
- UNITY_VERTEX_INPUT_INSTANCE_ID
- };
- struct VertexOutput
- {
- float4 positionCS : SV_POSITION;
- /*ase_interp(0,):sp=sp*/
- UNITY_VERTEX_INPUT_INSTANCE_ID
- };
- float4 _SelectionID;
- /*ase_funcs*/
- VertexOutput vert(VertexInput v /*ase_vert_input*/ )
- {
- VertexOutput o = (VertexOutput)0;
- UNITY_SETUP_INSTANCE_ID(v);
- UNITY_TRANSFER_INSTANCE_ID(v, o);
- UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
- /*ase_vert_code:v=VertexInput;o=VertexOutput*/
- #ifdef ASE_ABSOLUTE_VERTEX_POS
- float3 defaultVertexValue = v.positionOS.xyz;
- #else
- float3 defaultVertexValue = float3(0, 0, 0);
- #endif
- float3 vertexValue = /*ase_vert_out:Vertex Offset;Float3;1;-1;_Vertex*/defaultVertexValue/*end*/;
- #ifdef ASE_ABSOLUTE_VERTEX_POS
- v.positionOS.xyz = vertexValue;
- #else
- v.positionOS.xyz += vertexValue;
- #endif
- VertexPositionInputs vertexInput = GetVertexPositionInputs(v.positionOS.xyz);
- float3 positionWS = TransformObjectToWorld(v.positionOS);
- o.positionCS = TransformWorldToHClip(positionWS);
- return o;
- }
- half4 frag(VertexOutput IN /*ase_frag_input*/) : SV_TARGET
- {
- /*ase_frag_code:IN=VertexOutput*/
- float4 Color = /*ase_frag_out:Color;Float4;0;-1;_Color*/float4( 1, 1, 1, 1 )/*end*/;
- half4 outColor = _SelectionID;
- return outColor;
- }
- ENDHLSL
- }
- /*ase_pass_end*/
- }
- CustomEditor "UnityEditor.ShaderGraph.GenericShaderGraphMaterialGUI"
- FallBack "Hidden/Shader Graph/FallbackError"
- }
|