|
我将2张纹理混合后,想把混合好的效果输出到一张新的纹理上去,然后保存到一个dds中。
但是我又不想把它渲染到屏幕上去。听说要离屏渲染,怎么搞?刚从逻辑转学3d,纠结哦,等过了这段时间要从头开始学。
谁能告诉我怎么得到这张混合后的纹理IDirect3DTexture9* ?
IDirect3DDevice9* Device = NULL;
...
Device->SetTexture( 0, texBox );
Device->SetTextureStageState( 0, D3DTSS_TEXCOORDINDEX, 0);
Device->SetTextureStageState( 0, D3DTSS_COLORARG1, D3DTA_TEXTURE );
Device->SetTextureStageState( 0, D3DTSS_ALPHAARG1, D3DTA_TEXTURE );
Device->SetTextureStageState( 0, D3DTSS_COLOROP,D3DTOP_SELECTARG1 );
Device->SetTextureStageState( 0, D3DTSS_ALPHAOP,D3DTOP_SELECTARG1 );
Device->SetTexture( 1, texAlphaFlower );
Device->SetTextureStageState( 1, D3DTSS_TEXCOORDINDEX, 0);
Device->SetTextureStageState( 1, D3DTSS_COLORARG1, D3DTA_TEXTURE );
Device->SetTextureStageState( 1, D3DTSS_COLORARG2, D3DTA_CURRENT );
Device->SetTextureStageState( 1, D3DTSS_ALPHAARG1, D3DTA_TEXTURE );
Device->SetTextureStageState( 1, D3DTSS_ALPHAARG2, D3DTA_CURRENT );
Device->SetTextureStageState( 1, D3DTSS_COLOROP, D3DTOP_MODULATE );
Device->SetTextureStageState( 1, D3DTSS_ALPHAOP, D3DTOP_MODULATE ); |
|