hmmmm.... i tried but didn't work due to my limited knowledge of shaders...
pass p0
{
Texture[0]=<texSkin1>;
Texture[1]=<texSkin2>;
ZWriteEnable=true; // add these three lines
AlphaTestEnable=true;
CullMode=none;
...
PixelShader=
asm
{
ps.1.3
def c0,1,1,1,1
def c1,0,0,0,0
tex t0 // sample colormap
tex t1 // sample normalmap
mov r0,t0
cnd r0.a,r0.a,c0,c1
dp3 r1,t1_bx2,v0_bx2 // normal . light
mul r0.rgb,t0,r1
};
the transparency gets controlled with the alpha channel of the colormap. all alpha values less then 0.5 will be completely transparent and all values above 0.5 will be completely opaque. you have to experiment a little with the alphachannel to get the hang of it, but it works much better than normal overlays!