XNA图像显得clippy /模糊?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了XNA图像显得clippy /模糊?相关的知识,希望对你有一定的参考价值。
这是一个简单的问题,但我有一个非常高质量的图像精灵。但是,当我将它加载到SpriteBatch
时,它看起来像这样:
它看起来应该是这样的:
这里发生了什么,我该如何解决?
这是我加载SpriteBatch的方法:
this.landers =
Content.Load<Texture2D>("sprites/landers");
我有一个源矩形:
this.sprite = Rectangle(0, 0, 900, 900);
然后我画它:
sb.Draw(
texture: this.landers,
position: this.position,
sourceRectangle: this.sprite,
color: Color.White,
rotation: this.rotation,
origin: this.relativeOrigin,
scale: 0.06f,
effects: SpriteEffects.None,
layerDepth: 0f
);
答案
在外部工具中调整图像大小,选择最佳方法(双立方应该很好,或者只是拍摄已发布图像的屏幕截图并裁剪并缩放),并将其用作源图像。
缩放总是看起来最好作为1比1的比例(更不用说保存的计算)。 6%的缩放(使用简单但快速的方法,如Monogame中实现的)将具有与将图像缩放到其大小的~16.66 ...倍(1666%)类似的“伪像”。缩放在25%和400%之间时,源/目标矩形效果最佳。超出该范围,“伪影”往往由于信息丢失或缺乏而出现。
如果需要更大(或更小)的图像,请创建一个预定义到所需范围中心的辅助纹理。字体缩放也会出现同样的问题。
从较大的图像开始缩小(在合理范围内)总是更好,来自较大图像的信息有助于消除锯齿,但是超出特征分割(在您的情况下分离线条)的缩放将导致显示的失真由于信息丢失导致的图像。
以上是关于XNA图像显得clippy /模糊?的主要内容,如果未能解决你的问题,请参考以下文章