You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

105 lines
2.7 KiB

#pragma target 4.5
#define UNITY_MATERIAL_LIT
#define NEEDS_NORMAL defined(WRITE_NORMAL_BUFFER) || defined(WRITE_DECAL_BUFFER) || FORCE_NORMAL_VARYING || SHADERGRAPH_NEEDS_NORMAL_DEPTHONLY
#define NEEDS_TANGENT USE_NORMAL_MAP || USE_NORMAL_BENDING || SHADERGRAPH_NEEDS_TANGENT_DEPTHONLY
#define NEEDS_WORLDPOS VFX_NEEDS_POSWS_INTERPOLATOR
struct ps_input
{
float4 pos : SV_POSITION;
#if USE_FLIPBOOK_INTERPOLATION
float4 uv : TEXCOORD0;
#else
#if USE_FLIPBOOK_ARRAY_LAYOUT
float3 uv : TEXCOORD0;
#else
float2 uv : TEXCOORD0;
#endif
#endif
#if USE_ALPHA_TEST || USE_FLIPBOOK_INTERPOLATION || VFX_USE_ALPHA_CURRENT
// x: alpha threshold
// y: frame blending factor
// z: alpha
// w: smoothness
VFX_OPTIONAL_INTERPOLATION float4 builtInInterpolants : TEXCOORD1;
#endif
#if USE_FLIPBOOK_MOTIONVECTORS
// x: motion vector scale u
// y: motion vector scale v
VFX_OPTIONAL_INTERPOLATION float2 builtInInterpolants2 : TEXCOORD2;
#endif
#if NEEDS_NORMAL
float4 normal : TEXCOORD3; // normal scale is stored in w
#endif
#if NEEDS_TANGENT
float3 tangent : TEXCOORD4;
#endif
#if USE_NORMAL_BENDING
float2 bentFactors : TEXCOORD5;
#endif
#if NEEDS_WORLDPOS
float3 posWS : TEXCOORD6;
#endif
#if VFX_PASSDEPTH == VFX_PASSDEPTH_MOTION_VECTOR
VFX_DECLARE_MOTION_VECTORS_STORAGE(7,8)
#endif
#if VFX_SIX_WAY_USE_ALPHA_REMAP
nointerpolation float4 alphaRemap : TEXCOORD9;
#endif
${VFXAdditionalInterpolantsDeclaration}
UNITY_VERTEX_OUTPUT_STEREO
VFX_VERTEX_OUTPUT_INSTANCE_INDEX
};
#define VFX_VARYING_PS_INPUTS ps_input
#define VFX_VARYING_POSCS pos
#define VFX_VARYING_ALPHA builtInInterpolants.z
#define VFX_VARYING_ALPHATHRESHOLD builtInInterpolants.x
#define VFX_VARYING_FRAMEBLEND builtInInterpolants.y
#define VFX_VARYING_MOTIONVECTORSCALE builtInInterpolants2.xy
#define VFX_VARYING_UV uv
#if NEEDS_NORMAL
#define VFX_VARYING_NORMAL normal.xyz
#endif
#ifdef WRITE_NORMAL_BUFFER
#define VFX_VARYING_SMOOTHNESS builtInInterpolants.w
#endif
#if NEEDS_TANGENT
#define VFX_VARYING_TANGENT tangent
#endif
#if NEEDS_WORLDPOS
#define VFX_VARYING_POSWS posWS
#endif
#if USE_NORMAL_MAP
#define VFX_VARYING_NORMALSCALE normal.w
#endif
#if USE_NORMAL_BENDING
#define VFX_VARYING_BENTFACTORS bentFactors
#endif
#if VFX_PASSDEPTH == VFX_PASSDEPTH_MOTION_VECTOR
#define VFX_VARYING_VELOCITY_CPOS VFX_DECLARE_MOTION_VECTORS_VARYING_NONJITTER
#define VFX_VARYING_VELOCITY_CPOS_PREVIOUS VFX_DECLARE_MOTION_VECTORS_VARYING_PREVIOUS
#endif
#if VFX_SIX_WAY_USE_ALPHA_REMAP
#define VFX_VARYING_ALPHA_REMAP alphaRemap
#endif
${VFXBegin:VFXVertexAdditionalProcess}
${VFXHDRPLitFillVaryings}
${VFXEnd}
${VFXInclude("Shaders/ParticlePlanarPrimitives/Pass.template")}
${VFXPassDepthCommonFragmentLit}