Pourquoi ma Texture2D personnalisée est-elle floue?


8

Demandez à un objet WWW de télécharger une image .PNG.

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

Mon sprite a l'air bien.

Maintenant, soyons un peu redondants et créons un Texture2Ddes octets à partir du téléchargement:

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

Techniquement, cela devrait produire quelque chose identique à l'extrait ci-dessus. Cependant, le sprite est flou (comme dans, de faible qualité).

Je suppose que c'est lors de l'appel LoadImage. Qu'est-ce qui peut en être la cause?


Je sais que les textures chargées dans l'éditeur peuvent être floues si MipMapping est activé. Il doit être désactivé pour les textures 2D. Je ne sais pas comment cela se rapporte au chargement à partir du code.
ADB

Réponses:


9

Essayez de changer le filterMode en Point:

t.filterMode = FilterMode.Point;

1
Changer le mode de filtrage a fonctionné, bien que ce soit Trilinearcelui qui a donné les meilleurs résultats ( je ne sais pas pourquoi).
Oxide

1
Je suis content que tout soit réglé. Je suppose que je visualisais le pixel art (généralement mieux avec le filtrage ponctuel) tandis que le mode idéal variera selon le style artistique.
Kelly Thomas
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.