////////////////////////////////////////////////////// // MK Toon ShadowCaster Data // // // // Created by Michael Kremmel // // www.michaelkremmel.de // // Copyright © 2021 All rights reserved. // ////////////////////////////////////////////////////// #ifndef MK_TOON_SHADOWCASTER_IO #define MK_TOON_SHADOWCASTER_IO #include "../Core.hlsl" ///////////////////////////////////////////////////////////////////////////////////////////// // INPUT ///////////////////////////////////////////////////////////////////////////////////////////// struct VertexInputShadowCaster { float4 vertex : POSITION; half3 normal : NORMAL; #ifdef MK_PARALLAX half4 tangent : TANGENT; #endif #if defined(MK_VERTCLR) || defined(MK_POLYBRUSH) autoLP4 color : COLOR0; #endif #ifdef MK_TCM float2 texcoord0 : TEXCOORD0; #endif UNITY_VERTEX_INPUT_INSTANCE_ID }; ///////////////////////////////////////////////////////////////////////////////////////////// // OUTPUT ///////////////////////////////////////////////////////////////////////////////////////////// struct VertexOutputShadowCaster { #ifdef MK_LEGACY_RP V2F_SHADOW_CASTER_NOPOS #endif #if defined(MK_VERTCLR) || defined(MK_POLYBRUSH) autoLP4 color : COLOR0; #endif #ifdef MK_PARALLAX half3 viewTangent : TEXCOORD6; #endif #ifdef MK_TCM float2 uv : TEXCOORD7; #endif UNITY_VERTEX_INPUT_INSTANCE_ID UNITY_VERTEX_OUTPUT_STEREO }; #endif