Obsługa tekstur 32-bitowych
Domyślnie ZenGin dobrze obsługuje skompresowane tekstury DXT1 i DXT3, ale często ma problemy z formatami surowymi o wysokiej jakości, co prowadzi do artefaktów wizualnych lub braku poprawnej obsługi kanału alfa w niektórych kontekstach.
Aby używać tekstur wysokiej jakości z pełnym kanałem alfa (gradienty) bez artefaktów, często wymagany jest patch.
Patch zSurface32
Patch zSurface32 (często zawarty w SystemPacku/Unionie lub dostępny jako osobna wtyczka) poprawia jakość tekstur poprzez dodanie poprawnej obsługi formatów:
RGBA8888BGRA8888ARGB8888ABGR8888
Pozwala to na uzyskanie płynnych gradientów i wysokiej jakości elementów interfejsu (UI), które kompresja DXT mogłaby zniekształcić artefaktami (banding).
Dlaczego warto używać tekstur 32-bitowych?
- Jakość: Brak artefaktów kompresji (bloki).
- Kanał Alfa: Płynne przejścia przezroczystości (gradienty), z którymi DXT3 radzi sobie słabo (4-bitowy alfa oznacza tylko 16 poziomów przezroczystości), a DXT5 lepiej, ale wciąż z kompresją. Surowy format 32-bitowy pozwala na 256 poziomów przezroczystości bez strat.
Wada: Rozmiar pliku. Tekstura 32-bitowa jest znacznie większa niż skompresowana DXT (często 4x-8x większa). Używaj ich głównie do elementów UI lub skórek/twarzy bohatera, gdzie jakość jest najważniejsza.
Kompilacja
ZenGin domyślnie nie kompiluje łatwo tekstur do tych formatów z plików TGA bez specjalnych narzędzi.
Zalecany proces:
-
Użyj zTEXiPy.
-
Otwórz swoją teksturę.
-
Wybierz Save TEX as....
-
Odznacz Generate Mipmaps (jeśli to UI).
-
Ustaw Colorspace na BGRA8888 (zEnum: 3).
-
Zapisz.
Zaleca się używanie formatu BGRA8888 ze względów wydajnościowych, ponieważ inne przestrzenie barw mogą wymagać dodatkowej konwersji w czasie rzeczywistym przez silnik.