#include "common.h" #include "skin.h" // #define SKIN_2 struct vf { float4 hpos : POSITION; float2 tc0 : TEXCOORD0; // base float4 tc1 : TEXCOORD1; // projected lmap float3 c0 : COLOR0; // sun-color float4 c1 : COLOR1; // lq-color + factor float fog : FOG; }; vf _main (v_model v) { vf o; float4 pos = v.pos; float3 pos_w = mul (m_W, pos); float4 pos_w4 = float4 (pos_w,1); float3 norm_w = normalize (mul(m_W,v.norm)); o.hpos = mul (m_WVP, pos); // xform, input in world coords o.tc0 = v.tc.xy; // copy tc o.tc1 = calc_model_lmap (pos_w); // o.c0 = calc_sun (norm_w); // sun o.c1 = float4 (calc_model_lq_lighting(norm_w),m_plmap_clamp[0].w); o.fog = calc_fogging (pos_w4); // fog, input in world coords #ifdef SKIN_COLOR o.c1.rgb *= v.rgb_tint; o.c1.w = 1; #endif return o; } ///////////////////////////////////////////////////////////////////////// #define SKIN_VF vf #include "skin_main.h"