Я работаю над проектом в XNA, и я использую некоторые довольно большие текстуры, которые я загружаю в игру как объекты Texture2D, и рисую на экране намного меньше, чем они загружены. Причина этого в том, что мне нужно рисовать их в разных размерах в разных местах, и, хотя я мог бы сделать это с несколькими текстурами, это непрактично.
Моя проблема в том, что XNA, кажется, не сглаживает эти объекты Texture2D при их уменьшении. Я установил:
graphics.PreferMultiSampling = true;
а также
spriteBatch.Begin(SpriteBlendMode.AlphaBlend);
Но безрезультатно. Я также пробовал разные вещи, связанные с фильтрами в GraphicsDevice, но, честно говоря, толком не понимал, что делаю.
Очевидно, я рисую это с помощью spriteBatch, но кроме этого, ничего особенно интересного в том, как я это рисую.
Вот (увеличенный) пример того, что происходит и что я пытаюсь сделать:
Как видите, XNA не обеспечивает никакого сглаживания при масштабировании изображения. Есть ли способ заставить его сделать это, чтобы края выглядели чище?