2009-05-18 45 views
0

我有一個從具有alpha通道的PNG加載的精靈。該圖像包含一個不透明的磁盤,其餘部分是透明的。XNA:僅將SpriteBatch.Draw(...)顏色應用於不透明像素

我想使用color參數SpriteBatch.Draw(...)來更改磁盤的色調。但是,默認的混合行爲會將顏色應用於整個精靈,所以最終在着色盤周圍形成不透明的方形輪廓。

有什麼辦法可以改變混合模式,以便透明像素不受color參數的影響嗎?

回答

1

我從來沒有見過這種情況發生,自從XNA開始以來,我一直在使用像這樣的透明PNG。你在混合2D和3D嗎?如果是這樣,你的3D渲染設置可能會讓SpriteBatch變得令人困惑,但我認爲SpriteBatch應該爲你正確設置這些設置。也許你使用的PNG圖像有問題?

0

比爾,你是對的。我忘了清除其中一個PNG的背景。這個問題應該刪除。

+0

不,不要刪除它!這是StackOverflow的用途。如果有人遇到類似的問題,這個質量保證實際上可以將他們指向他們沒有想到的方向。 – 2009-05-18 07:35:35