为什么在带有vector2和矩形的绘图函数中会删除部分颜色

时间:2014-09-18 00:52:22

标签: c# xna

当我绘制一个像spriteBatch.Draw(textureMap0, mapPos0, rectMap0, Color.White);这样的精灵时,rectMap0精灵会失去颜色,只剩下一种颜色。这是矩形的设置方式:

        if (mapPos0.X == 350)
            rectMap0 = new Rectangle((int)mapPos0.X, (int)mapPos0.Y, textureMap0.Width, textureMap0.Height);
        else
            rectMap0 = new Rectangle((int)mapPos0.X, (int)mapPos0.Y, textureMap0.Width / 2, textureMap0.Height / 2);

此: enter image description here

而不是: enter image description here

1 个答案:

答案 0 :(得分:1)

您在绘图中使用了一个源矩形,因此可能太小或没有显示正确的部分。

尝试添加:

Console.WriteLine(rectMap0.ToString());

.Draw()来电之前的行,以便您查看矩形的规格。

如果您想要绘制整个图像,请记住您可以使用null,因为辩论是nullable