使用SpriteBatch.Draw XNA Framework显示时,Sprite会拉伸

时间:2019-03-20 04:54:51

标签: c# xna

使用XNA Framework spriteBatch.Draw()时,尽管两个轴上的比例似乎相同,但精灵仍显示为拉伸状态。从我可以看到的精灵应该位于左侧64个单位,应该压在窗口的顶部,但是应该是正方形,而不是矩形。纹理是一个简单的8x8正方形。

代码:

spriteBatch.Draw(Content.Load<Texture2D>("enemies/blob/blob_walk0"), new Rectangle(64, 0, 128, 64), Color.White);

很抱歉,如果这个问题不符合标准,我是stackoverflow的新手,真的不知道我在做什么。

1 个答案:

答案 0 :(得分:1)

new Rectangle()使用一种方法,您必须以像素为单位定义以下内容:
(x, y, width, height)

在您的情况下,宽度为128像素,高度为64像素。因此它的宽度将拉伸两倍。

128替换为64会使宽度等于高度,并会导致正方形。