float4x4 mWorld : WORLD;
float4x4 mView : VIEW;
float4x4 mProj : PROJECTION;
texture BaseTex < string UIName = “Basemap”; >;
struct VS_INPUT
{
float3 vPosition : POSITION;
float3 vNormal : NORMAL;
float2 vTexCoord0 : TEXCOORD0;
float4 vColor : TEXCOORD1;
};
struct VS_OUTPUT
{
float4 vPosition : POSITION;
float2 vTexCoord0 : TEXCOORD0;
float4 vColor : TEXCOORD1;
};
VS_OUTPUT VS(VS_INPUT In)
{
VS_OUTPUT Out = (VS_OUTPUT)0;
float3 vPos = mul(float4(In.vPosition, 1.0f), (float4x3)mWorld);
float3 vViewPos = mul(float4(vPos, 1.0f), (float4x3)mView);
Out.vPosition = mul(float4(vViewPos, 1.0f), mProj);
Out.vTexCoord0 = In.vTexCoord0;
Out.vColor = In.vColor;
return Out;
}
//////////////////////////////////////////////////////////////////////////////////////
//typedef VS_OUTPUT PS_INPUT;
struct PS_INPUT
{
float2 vTexCoord0 : TEXCOORD0;
float4 vColor : TEXCOORD1;
};
sampler BaseSampler = sampler_state
{
texture = ;
AddressU = WRAP;
AddressV = WRAP;
AddressW = WRAP;
MIPFILTER = LINEAR;
MINFILTER = LINEAR;
MAGFILTER = LINEAR;
};
float4 PS(PS_INPUT In) : COLOR
{
float4 vTexColor;
vTexColor = tex2D(BaseSampler, In.vTexCoord0)* float4(In.vColor.rgb, 1.0f);
//vTexColor = float4(1.0f, 0.0f, 0.0f, 1.0f);
return vTexColor;
}
technique tech0
{
pass pass0
{
FillMode = Solid;
CullMode = None;
ZEnable = true;
ZWriteEnable = true;
Zfunc = LESS;
Clipping = true;
Lighting = false;
AlphaTestEnable = true;
AlphaRef = 0;
AlphaFunc = NOTEQUAL;
AlphaBlendEnable = true;
SrcBlend = SrcAlpha;
DestBlend = InvSrcAlpha;
VertexShader = compile vs_2_0 VS();
PixelShader = compile ps_2_0 PS();
}
}