-1

DX 9 でテクスチャの特定の部分だけをアルファブレンドするにはどうすればよいですか?

たとえば、Photoshop のレイヤー (またはレイヤーをサポートするその他の写真編集プログラム)。
レイヤー(アルファで満たされた背景)に何かを描画し、レイヤーを元の画像の上に配置して(画面にテクスチャを描画)、元の画像+レイヤーに描いたもののみを作成できます。

はい、私の英語があまり「ピカピカ」ではないことはわかっています。

事前にどうもありがとうございました!

PS 私のテクスチャの背景はアルファで満たされています。

4

1 に答える 1

0

オーバーレイしたいテクスチャのアルファを、0 が透明 (つまり、下にあるものを表示)、1 が不透明 (つまり、オーバーレイ テクスチャを表示) になるように設定しましたか?

その場合は、単純なブレンド モードを設定する必要があります。

pDevice->SetRenderState( D3DRS_SRCBLEND, D3DBLEND_SRCALPHA );
pDevice->SetRenderState( D3DRS_DESTBLEND, D3DBLEND_INVSRCALPHA );
pDevice->SetRenderState( D3DRS_ALPHABLENDENABLE, TRUE );

背景を先に描いておきましょう!また、0 ~ 1 の値は、背景とオーバーレイ テクスチャ間の線形補間を表すことに注意してください。

于 2010-09-02T22:59:01.290 に答える