XNA使用Texture2D.FromStream时没有2D抗锯齿

时间:2014-04-09 22:13:19

标签: c# graphics xna antialiasing

我已经看了很多,并没有找到一个工作解决方案来渲染具有抗锯齿的2D纹理。我有这个形象;

enter image description here

当我使用XNA渲染它时,我得到左边的结果。当我用Flash,浏览器或图形程序渲染它时,我得到右边的结果。

enter image description here

我已经搜索过并且建议总是要改变GraphicsDevice中的设置,但我似乎无法使其工作。任何人都可以给我一个抗锯齿的工作示例(可能使用提供的图像)。

非常感谢你的帮助。我真的很感激。

1 个答案:

答案 0 :(得分:1)

当处理来自不在您游戏中的不同来源的数百张图片时,您可以像现在一样使用Texture2D.FromStream加载它们。这不能很好地处理alpha。

当我偶然发现GameDev.SE中的this post时,我会深入了解我的游戏来源,看看我是如何做到这一点的,它提供了解决问题的一些选项,并说明了正在发生的事情:< / p>

http://i.stack.imgur.com/UBu9Y.jpg

虽然选项#1更快,但我会选择#2,一开始可能看起来很复杂,但我已经尝试了它并且效果非常好。

现在,如果碰巧遇到抗锯齿问题,或想要启用/禁用它,您可以这样做: graphics.PreferMultiSampling = true;