我有一個基於瓷磚的遊戲。每個瓷磚紋理都被加載,然後我將每個瓷磚紋理相鄰,形成一個連續的背景。我實際上按照這個教程的XML文件。XNA - 繪製縮放2D精靈
http://www.xnadevelopment.com/tutorials/looksleveltome/looksleveltome.shtml
紋理的來源爲50x50。
然而,它只能它的比例爲1(或更低),如果比例大於
結果:正常尺寸(50像素和規模1) http://imageshack.us/photo/my-images/525/smallzp.jpg/
更大的尺寸(縮小或100像素xml文件) http://imageshack.us/photo/my-images/577/largeki.jpg/
我們可以看到瓷磚之間存在線條,這些線條不在紋理中。它實際上不是那麼糟糕這裏,但在我的遊戲地形設置,這就是它的作用: http://imageshack.us/photo/my-images/687/zoomedsize.png/
同樣的效果是目前我是否增加在XML文件中的平鋪尺寸,繪製時更改比例或使用我的相機放大。
//zoom code
public Matrix GetTransformation()
{
return
Matrix.CreateTranslation(new Vector3(-_pos.X, -_pos.Y, 0)) *
Matrix.CreateRotationZ(Rotation) *
Matrix.CreateScale(new Vector3(Zoom, Zoom, 1)) *
Matrix.CreateTranslation(new Vector3(_device.Viewport.Width * 0.5f, _device.Viewport.Height * 0.5f, 0));
}
//draw
_spriteBatch.Begin(SpriteSortMode.Immediate,
BlendState.AlphaBlend, null, null, null, null,
_camera.GetTransformation());
//for each tile
theSpriteBatch.Draw(mSpriteTexture, Position, Source,
Color.Lerp(Color.White, Color.Transparent, mAlphaValue),
mRotation, new Vector2(mSource.Width/2, mSource.Height/2),
Scale, SpriteEffects.None, mDepth);
這是有原因嗎?一種方法來解決它放大時有連續的紋理?
這是天才,它的作品!謝謝! – Amaranth