2012-04-25 63 views
0

我有一个512x512的图像,我需要瓷砖的背景。XNA 4 2D平铺雪碧 - 奇怪的线

我这样做是通过设置SamplerState.LinearWrap并在图像上设置一个更大的源矩形。

spriteBatch.Begin(SpriteSortMode.Immediate, BlendState.NonPremultiplied, SamplerState.LinearWrap, DepthStencilState.Default, RasterizerState.CullNone); 
spriteBatch.Draw(texture, bounds, bounds, Color.White); 
spriteBatch.End(); 

boundsnew Rectangle(0, 0, 1024, 768)

现在它正在寻找这样的:

Game Background

这些线是图像被平铺在那里。原始png在边缘没有任何线条(我在Photoshop中放大并检查了它)。

这是怎么回事? Here is an example project on DropBox

我试过使用非功率为2的纹理,它在SamplerState上给出了一个错误,所以我使用了适当大小的纹理,我相信。

回答

2

似乎是图像中的图形工件。

我将图像的一部分复制并粘贴到边缘,并按预期工作,代码正在工作。尝试使用不同的图像进行确认。

+0

谢谢,我会让我们的设计师看看它并让你知道。 – jonathanpeppers 2012-04-25 17:21:51

+0

看起来你是对的,在图像的顶部和左边有一些部分透明的像素。 – jonathanpeppers 2012-04-25 19:43:52