¿Por qué mi textura personalizada 2D es borrosa?


8

Tenga algún objeto WWW descargando una imagen .PNG.

((SpriteRenderer)renderer).sprite = Sprite.Create(request.texture, 
         new Rect(0,0,100,100));

Mi sprite se ve bien.

Ahora, seamos un poco redundantes y creemos una Texture2Dsalida de los bytes de la descarga:

Texture2D t = new Texture2D(100,100);
t.LoadImage(request.bytes);
((SpriteRenderer)renderer).sprite = Sprite.Create(t, new Rect(0,0,t.width,t.height));

Técnicamente, esto debería producir algo idéntico al fragmento anterior. Sin embargo, el sprite está borroso (como en baja calidad).

Supongo que es cuando se llama LoadImage. ¿Que pudo haber causado ésto?


Sé que las texturas cargadas en el editor pueden ser borrosas si MipMapping está activado. Debe estar APAGADO para texturas 2D. No estoy seguro de cómo se relaciona eso con cargado del código.
ADB

Respuestas:


9

Intente cambiar el filterMode a Point:

t.filterMode = FilterMode.Point;

1
Cambiar el modo de filtro funcionó, aunque fue Trilinearel que produjo los mejores resultados (no estoy seguro de por qué).
Oxido

1
Me alegro de que eso lo haya solucionado. Supongo que estaba visualizando pixel art (generalmente mejor con filtrado de puntos), mientras que el modo ideal variará con el estilo de arte.
Kelly Thomas
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.