Warum ist meine benutzerdefinierte Texture2D verschwommen?

8

Lassen Sie ein WWW-Objekt ein PNG-Bild herunterladen.

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

Mein Sprite sieht gut aus.

Lassen Sie uns nun etwas redundant sein und Texture2Daus den Bytes des Downloads ein erstellen :

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

Technisch sollte dies etwas erzeugen, das mit dem obigen Snippet identisch ist. Das Sprite ist jedoch verschwommen (wie bei geringer Qualität).

Ich nehme an, es ist beim Anruf LoadImage. Was kann dies verursachen?

Oxid
quelle
Ich weiß, dass im Editor geladene Texturen verschwommen sein können, wenn MipMapping aktiviert ist. Es sollte für 2D-Texturen AUS sein. Ich bin mir nicht sicher, wie sich das auf das Laden aus Code bezieht.
ADB

Antworten:

9

Versuchen Sie, den filterMode in Point zu ändern :

t.filterMode = FilterMode.Point;
Kelly Thomas
quelle
1
Das Ändern des Filtermodus funktionierte, obwohl er Trilineardie besten Ergebnisse lieferte (nicht sicher warum).
Oxid
1
Ich bin froh, dass das geklärt wurde. Ich schätze, ich habe Pixelkunst visualisiert (normalerweise am besten mit Punktfilterung), während der ideale Modus je nach Kunststil variiert.
Kelly Thomas