【问题标题】:Sprites blurry when enlarged放大时精灵模糊
【发布时间】:2015-03-02 11:48:36
【问题描述】:
在 XNA 中,我尝试使用老式超级马里奥精灵创建游戏,但如果我尝试将它们放大,它们会变得非常模糊。我曾尝试在 Photoshop 中将 PNG 精灵保存为最近邻、双三次和双线性,但它们都显得同样模糊。我也试过在线压缩PNG,也没有帮助。
我对 XNA 的了解有些基础,所以除非你的答案是代码,否则我可以简单地复制粘贴到我的“主”类中,请说明如何使用它。
【问题讨论】:
标签:
c#
xna
sprite
texture2d
blurry
【解决方案1】:
在您的绘图功能中,您应该只需要更改一行代码。
您拨打spritebatch.Begin(); 的地方改为拨打
spriteBatch.Begin(SpriteSortMode.Immediate, BlendState.AlphaBlend, SamplerState.PointClamp, DepthStencilState.Default, RasterizerState.CullCounterClockwise);
这会将您的“GraphicsDevice”设置为渲染纹理,而不会在精灵缩放时在整个像素之间插入颜色。
您可以做的另一件事是使用具有您希望游戏“模拟”的分辨率的渲染目标,在渲染目标上绘制所有内容,最后将其绘制到屏幕上。
这有点超出了这个问题的范围,但如果你想创造一个真正的老派体验,它是理想的。