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.8 KiB
106 lines
2.8 KiB
|
|
#define URP_NEEDS_UVS (URP_USE_BASE_COLOR_MAP || URP_USE_MASK_MAP || USE_NORMAL_MAP || URP_USE_EMISSIVE_MAP) |
|
#define URP_USE_EMISSIVE (URP_USE_EMISSIVE_MAP || URP_USE_EMISSIVE_COLOR || URP_USE_ADDITIONAL_EMISSIVE_COLOR) |
|
|
|
${VFXBegin:VFXURPLitVaryingsMacros} |
|
#if (VFX_NEEDS_COLOR_INTERPOLATOR && URP_USE_BASE_COLOR) || URP_USE_ADDITIONAL_BASE_COLOR |
|
#define VFX_VARYING_COLOR color.rgb |
|
#define VFX_VARYING_ALPHA color.a |
|
#endif |
|
|
|
#define VFX_VARYING_SMOOTHNESS materialProperties.x |
|
|
|
#if URP_MATERIAL_TYPE_METALLIC |
|
#define VFX_VARYING_METALLIC materialProperties.y |
|
#elif URP_MATERIAL_TYPE_SPECULAR |
|
#define VFX_VARYING_SPECULAR specularColor |
|
#elif URP_MATERIAL_TYPE_TRANSLUCENT |
|
#define VFX_VARYING_THICKNESS materialProperties.y |
|
#endif |
|
|
|
#if USE_NORMAL_MAP |
|
#define VFX_VARYING_NORMALSCALE materialProperties.z |
|
#endif |
|
|
|
#if URP_USE_EMISSIVE_MAP |
|
#define VFX_VARYING_EMISSIVESCALE materialProperties.w |
|
#endif |
|
|
|
#if URP_USE_EMISSIVE_COLOR || URP_USE_ADDITIONAL_EMISSIVE_COLOR |
|
#define VFX_VARYING_EMISSIVE emissiveColor.rgb |
|
#endif |
|
|
|
#if USE_EXPOSURE_WEIGHT |
|
#define VFX_VARYING_EXPOSUREWEIGHT emissiveColor.a |
|
#endif |
|
${VFXEnd} |
|
|
|
${VFXBegin:VFXURPLitDeclareVaryings} |
|
|
|
#if (VFX_NEEDS_COLOR_INTERPOLATOR && URP_USE_BASE_COLOR) || URP_USE_ADDITIONAL_BASE_COLOR |
|
VFX_OPTIONAL_INTERPOLATION float4 color : COLOR0; |
|
#endif |
|
#if URP_MATERIAL_TYPE_SPECULAR |
|
VFX_OPTIONAL_INTERPOLATION float3 specularColor : COLOR1; |
|
#endif |
|
#if URP_USE_EMISSIVE |
|
VFX_OPTIONAL_INTERPOLATION float4 emissiveColor : COLOR2; |
|
#endif |
|
|
|
// x: smoothness |
|
// y: metallic/thickness |
|
// z: normal scale |
|
// w: emissive scale |
|
VFX_OPTIONAL_INTERPOLATION float4 materialProperties : TEXCOORD0; |
|
${VFXEnd} |
|
|
|
${VFXBegin:VFXURPLitFillVaryings} |
|
#ifndef VFX_SHADERGRAPH |
|
#ifdef VFX_VARYING_SMOOTHNESS |
|
${VFXLoadParameter:{smoothness}} |
|
o.VFX_VARYING_SMOOTHNESS = smoothness; |
|
#endif |
|
#if URP_MATERIAL_TYPE_METALLIC |
|
#ifdef VFX_VARYING_METALLIC |
|
${VFXLoadParameter:{metallic}} |
|
o.VFX_VARYING_METALLIC = metallic; |
|
#endif |
|
#elif URP_MATERIAL_TYPE_SPECULAR |
|
#ifdef VFX_VARYING_SPECULAR |
|
${VFXLoadParameter:{specularColor}} |
|
o.VFX_VARYING_SPECULAR = specularColor.rgb; |
|
#endif |
|
#elif URP_MATERIAL_TYPE_TRANSLUCENT |
|
#ifdef VFX_VARYING_THICKNESS |
|
${VFXLoadParameter:{thickness}} |
|
o.VFX_VARYING_THICKNESS = thickness; |
|
#endif |
|
#endif |
|
#if USE_NORMAL_MAP |
|
#ifdef VFX_VARYING_NORMALSCALE |
|
${VFXLoadParameter:{normalScale}} |
|
o.VFX_VARYING_NORMALSCALE = normalScale; |
|
#endif |
|
#endif |
|
#if URP_USE_EMISSIVE_MAP |
|
#ifdef VFX_VARYING_EMISSIVESCALE |
|
${VFXLoadParameter:{emissiveScale}} |
|
o.VFX_VARYING_EMISSIVESCALE = emissiveScale; |
|
#endif |
|
#endif |
|
#ifdef VFX_VARYING_EMISSIVE |
|
#if URP_USE_EMISSIVE_COLOR |
|
o.VFX_VARYING_EMISSIVE = attributes.color; |
|
#elif URP_USE_ADDITIONAL_EMISSIVE_COLOR |
|
${VFXLoadParameter:{emissiveColor}} |
|
o.VFX_VARYING_EMISSIVE = emissiveColor.rgb; |
|
#endif |
|
#endif |
|
#if URP_USE_ADDITIONAL_BASE_COLOR |
|
#ifdef VFX_VARYING_COLOR |
|
${VFXLoadParameter:{baseColor}} |
|
o.VFX_VARYING_COLOR = baseColor; |
|
#endif |
|
#endif |
|
#endif |
|
${VFXEnd}
|
|
|