1

テクスチャファイルの滑らかなアルファグラデーションにいくつかの問題があり、バンディングの問題が発生します。

私は2DXNAWP7ゲームを持っていて、かなりシンプルな照明システムを思いついた。別のRenderTarget2Dでライトによって照らされる領域を描画し、スプライトを適用してライトから離れるにつれてエッジを暗くし、その最終的なライティングイメージをメインイメージとブレンドして、特定のエリアを暗くしたり明るくしたりします。

これが私がこれまでに得たものです:

スポットライトマスク

ライトバンディングの例

ご覧のとおり、バンディングはかなり悪いです。ソース画像のアルファ透明度は非常に滑らかですが、スプライトを描画するたびに、色の間でこれらの巨大な醜いステップが発生します。確認するために、通常のアルファブレンディングでスポットライトマスクをシーンに直接描画しましたが、それでもバンディングが発生しました。

スプライトを描画するときに滑らかなアルファグラデーションを維持する方法はありますか?

4

2 に答える 2

1

スプライトを描画するときに滑らかなアルファグラデーションを維持する方法はありますか?

いいえ、あなたがすることはできません。WP7電話は現在16ビットカラーレンジシステムを使用しています。1つのピクセルが得られました:5つの赤いビット、5つの青、6つの緑(人間はより広いスペクトルの緑の色を見ます)。

于 2012-04-23T04:13:59.850 に答える
1

Mangoを使用すると、アプリは32bppをサポートするように指定できるようになり、32bppをサポートするデバイスで動作することがわかりました。

ライトバンディングの例はありません

XNAの場合、この行を次の先頭に配置しOnNavigatedToます。

SharedGraphicsDeviceManager.Current.PreferredBackBufferFormat = SurfaceFormat.Color;

Silverlightの場合は、の要素に追加BitsPerPixel="32"します。AppWMAppManifest.xml

于 2012-05-02T01:21:58.267 に答える