#pragma target 4.5 struct ps_input { float4 pos : SV_POSITION; #if USE_ALPHA_TEST || VFX_USE_ALPHA_CURRENT // x: alpha // y: alpha threshold nointerpolation float2 builtInInterpolants : TEXCOORD1; #endif #if VFX_PASSDEPTH == VFX_PASSDEPTH_MOTION_VECTOR VFX_FEATURE_MOTION_VECTORS_INTERPOLATION float4 cPosPrevious : TEXCOORD2; VFX_FEATURE_MOTION_VECTORS_INTERPOLATION float4 cPosNonJiterred : TEXCOORD3; #endif UNITY_VERTEX_OUTPUT_STEREO }; #define VFX_VARYING_PS_INPUTS ps_input #define VFX_VARYING_POSCS pos #define VFX_VARYING_ALPHA builtInInterpolants.x #define VFX_VARYING_ALPHATHRESHOLD builtInInterpolants.y #if VFX_PASSDEPTH == VFX_PASSDEPTH_MOTION_VECTOR #define VFX_VARYING_VELOCITY_CPOS cPosNonJiterred #define VFX_VARYING_VELOCITY_CPOS_PREVIOUS cPosPrevious #endif #undef VFX_USE_RIM_LIGHT #if VFX_PASSDEPTH == VFX_PASSDEPTH_MOTION_VECTOR ${VFXPassVelocityDefine} #elif VFX_PASSDEPTH == VFX_PASSDEPTH_ACTUAL || VFX_PASSDEPTH == VFX_PASSDEPTH_SELECTION ${VFXPassDepthDefine} #endif ${VFXInclude("Shaders/ParticleHexahedron/Pass.template")} #define VFX_SUPPORT_MAIN_TEXTURE_SAMPLING_IN_FRAGMENT_DEPTH 0 ${VFXPassDepthCommonFragmentUnlit}