Respuestas:
Necesita establecer el estado del muestreador. El valor predeterminado para SpriteBatch es SamplerState.LinearClamp
( es decir: interpolación lineal, la suave / borrosa).
Elija una de las SpriteBatch.Begin
llamadas que toma un SamplerState
y pasa SamplerState.PointClamp
(selecciona el píxel en ese "punto" de precicio).
En caso de que alguien más se pregunte cómo hacer esto fuera de un lote de sprites, debe hacerlo justo antes de presentar sus primitivas:
this.GraphicsDevice.SamplerStates[0] = SamplerState.PointClamp;
Esto debe hacerse en cada cuadro, si hay otros elementos en su canal de renderizado que cambiarían este valor (como a SpriteBatch
).
SamplerState.PointWrap
opción si desea que se realice el ajuste de la textura (mientras se deshabilita el filtrado de textura). O si necesita su propio comportamiento personalizado, puede crear un nuevoSamplerState
objeto para adaptarse a cualquier necesidad personalizada y cambiar laFilter
propiedad aTextureFilter.Point
.