
/**//////pixel shader:
sampler BaseTex;
sampler SpotLightTex;
sampler StringTex;


struct PS_INPUT
{
float2 base : TEXCOORD0;
float2 spotlight : TEXCOORD1;
float2 text : TEXCOORD2;
};
struct PS_OUTPUT

{
vector finalcolor : COLOR;
};
PS_OUTPUT Main(PS_INPUT input)

{
PS_OUTPUT output = (PS_OUTPUT)0;
vector b = tex2D(BaseTex, input.base);
vector s = tex2D(SpotLightTex, input.spotlight);
vector t = tex2D(StringTex, input.text);
vector c = b * s + t;
c += 0.1f;
output.finalcolor = c;

return output;
}


/**////////////////////////主程序
//
..
BT = PSConstantTable->GetConstantByName(0, "BaseTex");
ST = PSConstantTable->GetConstantByName(0, "SpotLightTex");
TT = PSConstantTable->GetConstantByName(0, "StringTex");
//
..
BT, ST, TT 為D3DXHANDLE類型,調試到這里時
這三個都為錯誤指針,PSConstantTable為獲取正常的靜態數據表指針,pixel shader編譯也沒問題,到底是哪里錯了,抓狂。。


