|
//纹理混合设置
hr = m_pID3D9Device->SetRenderState(D3DRS_ALPHABLENDENABLE, TRUE);
hr = m_pID3D9Device->SetRenderState(D3DRS_SRCBLEND, D3DBLEND_SRCALPHA);
hr = m_pID3D9Device->SetRenderState(D3DRS_DESTBLEND, D3DBLEND_INVSRCALPHA);
hr = m_pID3D9Device->SetRenderState(D3DRS_SPECULARENABLE, TRUE);
//使用纹理中颜色 或 a值 作为输出,到底是那个输出那,D3DTSS_COLOROP决定了是颜色输出,并且Srgba = ARG1;
hr = m_pID3D9Device->SetTextureStageState( 0, D3DTSS_COLOROP, D3DTOP_SELECTARG1 );
//指定对纹理中的颜色操作ARG1= color
hr = m_pID3D9Device->SetTextureStageState( 0, D3DTSS_COLORARG1, D3DTA_TEXTURE);
//指定对a值操作, Srgba = ARG1 *ARG2
hr = m_pID3D9Device->SetTextureStageState( 0, D3DTSS_ALPHAOP, D3DTOP_MODULATE );
//指定对纹理中的a操作ARG1= a
hr = m_pID3D9Device->SetTextureStageState( 0, D3DTSS_ALPHAARG1, D3DTA_TEXTURE );
//指定对顶点的颜色中的a 操作 ARG2=A
hr = m_pID3D9Device->SetTextureStageState( 0, D3DTSS_ALPHAARG2, D3DTA_DIFFUSE );
各位大哥,我问两个问题,请指导,
1.我写的这些注释对吗?
2.这些参数的设置最后怎么影响我的输出啊?
|
|