C#とXNAを使用してWP7デバイスでゲームを作成しています。ユーザーがタッチしているオブジェクトを常に一番上に移動させたいシステムがあるので、タッチするたびにfloat.Epsilon
描画深度を追加します(0が背面、1が前面になるように設定しています)。 。
エミュレーターではすべて正常に動作しますが、デバイスで実行すると、描画深度は完全にランダムに見えます。
誰かがこれを修正する方法を知っていることを願っています。Clean&Rebuildを実行してデバイスからアンインストールしようとしましたが、それはうまくいきません。私の呼びかけspritebatch.Begin
は:
spriteBatch.Begin(SpriteSortMode.FrontToBack, BlendState.AlphaBlend);
そして描くために私は使用します
spriteBatch.Draw(Texture, new Rectangle((int)X, (int)Y, (int)Width, (int)Height), null, Color.White, 0, Vector2.Zero, SpriteEffects.None, mDrawDepth);
描画深度のfloat値はどこにありますかmDrawDepth
(非常に小さい数である可能性があります。。の小さな倍数ですfloat.Epsilon
。
どんな助けでも大歓迎です、ありがとう!