|
请看这个vs代码:
vs_1_1
...
dcl c10,1,1,1,0
...
mov od0.xyz,c10.xyz
mov od0.w,r0.w
r0.w是求出的顶点的alpha值,可是不中用,怎么也不能正常工作
主程中已设置
m_pd3dDevice->SetRenderState( D3DRS_ALPHABLENDENABLE, true );
m_pd3dDevice->SetRenderState( D3DRS_SRCBLEND, D3DBLEND_SRCCOLOR );
m_pd3dDevice->SetRenderState( D3DRS_DESTBLEND, D3DBLEND_DESTCOLOR);
m_pd3dDevice->SetRenderState( D3DRS_ALPHATESTENABLE, true );
m_pd3dDevice->SetRenderState( D3DRS_ALPHAREF, D3DXCOLOR(0.0f,0.0f,0.0f,0));
m_pd3dDevice->SetRenderState( D3DRS_ALPHAFUNC, D3DCMP_GREATEREQUAL );
现象:顶点远离我的一端始终为全透明状态,靠近我的一端始终为不透明状态,就是将r0.w直接改为c10.w也不行,是不是某地方出错了?
[em4] [em4] [em4] [em4] |
|