123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110 |
- #ifndef INPUT_BASETOPDOWN_INCLUDED
- #define INPUT_BASETOPDOWN_INCLUDED
- #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
- // defines a bunch of helper functions (like lerpwhiteto)
- #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/CommonMaterial.hlsl"
- // defines SurfaceData, textures and the functions Alpha, SampleAlbedoAlpha, SampleNormal, SampleEmission
- #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/SurfaceInput.hlsl"
- // defines e.g. "DECLARE_LIGHTMAP_OR_SH"
- #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl"
-
- #include "../Includes/Lux URP Simple Fuzz Lighting.hlsl"
- #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Color.hlsl"
- #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/UnityInstancing.hlsl"
- CBUFFER_START(UnityPerMaterial)
- float4 _BaseMap_ST;
- half4 _BaseColor;
- half4 _SpecColor;
- half _BumpScale;
- half _GlossMapScale;
- half _GlossMapScaleDyn;
- half4 _EmissionColor;
- half _Occlusion;
- half _BumpScaleDyn;
- half _NormalFactor;
- half _NormalLimit;
- half _TopDownTiling;
- float3 _TerrainPosition;
- half _LowerNormalMinStrength;
- half _LowerNormalInfluence;
- half _HeightBlendSharpness;
- // Simple Fuzz
- half _FuzzStrength;
- half _FuzzAmbient;
- half _FuzzWrap;
- half _FuzzPower;
- half _FuzzBias;
- half _Cutoff; //HDRP 10.1. DepthNormal pass
- CBUFFER_END
- struct VertexInput
- {
- float4 positionOS : POSITION;
- float3 normalOS : NORMAL;
- float4 tangentOS : TANGENT;
- float2 texcoord : TEXCOORD0;
- float2 lightmapUV : TEXCOORD1;
- UNITY_VERTEX_INPUT_INSTANCE_ID
- };
- struct VertexOutput {
-
- float4 positionCS : SV_POSITION;
- //#ifdef _ADDITIONAL_LIGHTS
- float3 positionWS : TEXCOORD0;
- //#endif
- #if !defined(UNITY_PASS_SHADOWCASTER) && !defined(DEPTHONLYPASS) && !defined(DEPTHNORMALONLYPASS)
- float4 uv : TEXCOORD1;
- #if !defined(CUSTOMMETAPASS)
- DECLARE_LIGHTMAP_OR_SH(lightmapUV, vertexSH, 2);
- float3 normalWS : TEXCOORD3;
- #ifdef _NORMALMAP
- float4 tangentWS : TEXCOORD4; // xyz: tangent, w: tangent sign
- #endif
- float3 viewDirWS : TEXCOORD5;
-
- float4 fogFactorAndVertexLight : TEXCOORD6; // x: fogFactor, yzw: vertex light
- #if defined(REQUIRES_VERTEX_SHADOW_COORD_INTERPOLATOR)
- float4 shadowCoord : TEXCOORD7;
- #endif
- #endif
- #endif
- UNITY_VERTEX_INPUT_INSTANCE_ID
- UNITY_VERTEX_OUTPUT_STEREO
- };
- struct SurfaceDescription
- {
- half3 albedo;
- half alpha;
- half3 normalTS;
- half3 emission;
- half metallic;
- half3 specular;
- half smoothness;
- half occlusion;
- half fuzzMask;
- };
- #endif
|