C# XNA:缩小纹理2D antialias?

C# XNA:缩小纹理2D antialias?,c#,xna,antialiasing,texture2d,xbox,C#,Xna,Antialiasing,Texture2d,Xbox,我正在XNA上做一个项目,我正在使用一些相当大的纹理,我将它们作为Texture2D对象加载到游戏中,并在屏幕上绘制比加载时小得多的纹理。这样做的原因是我需要在不同的地方绘制不同大小的图像,虽然我可以使用多种纹理,但这样做是不切实际的 我的问题是,XNA似乎无法在缩小这些Texture2D对象时对其进行反锯齿处理。我已设定: graphics.PreferMultiSampling = true; 而且 spriteBatch.Begin(SpriteBlendMode.AlphaBlend)

我正在XNA上做一个项目,我正在使用一些相当大的纹理,我将它们作为Texture2D对象加载到游戏中,并在屏幕上绘制比加载时小得多的纹理。这样做的原因是我需要在不同的地方绘制不同大小的图像,虽然我可以使用多种纹理,但这样做是不切实际的

我的问题是,XNA似乎无法在缩小这些Texture2D对象时对其进行反锯齿处理。我已设定:

graphics.PreferMultiSampling = true;
而且

spriteBatch.Begin(SpriteBlendMode.AlphaBlend);
但是没有用。我也尝试过各种涉及图形设备中的过滤器的事情,但老实说,我并不知道我在做什么

显然,我是用spriteBatch绘制的,但除此之外,我绘制它的方式没有什么特别有趣的

下面是一个(放大的)正在发生的事情的例子,以及我试图让它发生的事情:


如您所见,XNA在重新缩放图像时不提供任何抗锯齿。有没有办法强迫它这样做,以使边缘看起来更干净?

您正在调用
graphics.PreferMultiSampling=true在创建
图形设备
之前?在创建之前,您必须在
游戏
构造函数或
初始化()

中打开它。在定义GraphicsDeviceManager(显然)之后和调用ApplyChanges()之前,我在游戏构造函数中调用它。我还可以补充一点,无论在哪里添加它,似乎都没有什么区别。