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.
 
 
 
 

106 lines
2.7 KiB

#pragma target 4.5
#if SHADERGRAPH_NEEDS_NORMAL_DEPTHONLY || defined(WRITE_NORMAL_BUFFER) || FORCE_NORMAL_OUTPUT_UNLIT_VERTEX_SHADER
#define NEEDS_NORMAL 1
#endif
#if SHADERGRAPH_NEEDS_TANGENT_DEPTHONLY
#define NEEDS_TANGENT 1
#endif
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 VFX_SHADERGRAPH_HAS_UV1
float4 uv1 : TEXCOORD1;
#endif
#if VFX_SHADERGRAPH_HAS_UV2
float4 uv2 : TEXCOORD2;
#endif
#if VFX_SHADERGRAPH_HAS_UV3
float4 uv3 : TEXCOORD3;
#endif
#if VFX_SHADERGRAPH_HAS_COLOR
float4 vertexColor : COLOR;
#endif
#if USE_ALPHA_TEST || USE_FLIPBOOK_INTERPOLATION || VFX_USE_ALPHA_CURRENT
// x: alpha threshold
// y: frame blending factor
// z: alpha
nointerpolation float3 builtInInterpolants : TEXCOORD4;
#endif
#if USE_FLIPBOOK_MOTIONVECTORS
// x: motion vectors scale X
// y: motion vectors scale Y
nointerpolation float2 builtInInterpolants2 : TEXCOORD5;
#endif
#if VFX_NEEDS_POSWS_INTERPOLATOR
float3 posWS : TEXCOORD6;
#endif
#if VFX_PASSDEPTH == VFX_PASSDEPTH_MOTION_VECTOR
VFX_DECLARE_MOTION_VECTORS_STORAGE(7,8)
#endif
${VFXAdditionalInterpolantsDeclaration}
#if NEEDS_NORMAL
float3 normal : TEXCOORD9;
#endif
#if NEEDS_TANGENT
float4 tangent : TEXCOORD10;
#endif
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 VFX_NEEDS_POSWS_INTERPOLATOR
#define VFX_VARYING_POSWS posWS
#endif
#if NEEDS_NORMAL
#define VFX_VARYING_NORMAL normal
#endif
#if NEEDS_TANGENT
#define VFX_VARYING_TANGENT tangent
#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_PASSDEPTH == VFX_PASSDEPTH_MOTION_VECTOR
${VFXPassVelocityDefine}
#elif VFX_PASSDEPTH == VFX_PASSDEPTH_ACTUAL || VFX_PASSDEPTH == VFX_PASSDEPTH_SELECTION || VFX_PASSDEPTH == VFX_PASSDEPTH_PICKING
${VFXPassDepthDefine}
#elif VFX_PASSDEPTH == VFX_PASSDEPTH_SHADOW
${VFXPassShadowDefine}
#endif
${VFXInclude("Shaders/ParticleMeshes/Pass.template")}
#define VFX_SUPPORT_MAIN_TEXTURE_SAMPLING_IN_FRAGMENT_DEPTH 1
${VFXInclude("Shaders/VFXPassDepthCommonFragmentUnlit.template")}