Format zip obsługuje kilka różnych algorytmów kompresji. Możesz użyć innego algorytmu dla każdego pliku w archiwum. Jeśli chcesz przechowywać skompresowane pliki, które nie korzystają z dodatkowej kompresji (np. PNG) w archiwum zip, możesz zakodować te pliki za pomocą algorytmu „zapisanego”, który w ogóle się nie kompresuje. Okno dialogowe „Dodaj do archiwum” 7-zip pozwala wybrać to w „Siła kompresji”.
Ale gdy w archiwach masz nie tylko obrazy, ale także inne, bardziej kompresowalne zasoby, wybranie algorytmu dla każdego pliku może być dość nużące. W takim przypadku możesz raczej wybrać nieskompresowany format obrazu w archiwum kompresującym.
Format TGA zna wiele różnych trybów, z których niektóre są skompresowane, a niektóre nie. Jeśli nie chcesz używać kompresji, upewnij się, że wybrałeś właściwą w opcjach eksportu edytora graficznego, którego używasz. Innym nieskompresowanym formatem obrazu jest BMP (Windows Bitmap).
Oto test, który zrobiłem. Wielokrotnie dodawałem ten sam obraz (zasób z mojego obecnego projektu) w różnych formatach do archiwum zip, niektóre z algorytmem „deflate” na normalnej sile, a drugie z „store”. Przepraszamy za niemiecki GUI. Druga kolumna ma nieskompresowany rozmiar, trzecia kolumna jest algorytmem kompresji, a czwarta kolumna ma rozmiar skompresowany.
Jak widać, kodowanie deflate PNG pozwoliło zaoszczędzić zaledwie 0,3%, podczas gdy BMP kodowany deflate jest redukowany do jednej dziesiątej oryginalnego pliku, który jest nawet mniejszy niż wersja PNG. To mnie zaskoczyło. Spodziewałbym się, że PNG będzie mniejszy, ponieważ metoda kompresji PNG powinna być zoptymalizowana dla danych obrazu, podczas gdy ZIP nie jest. Prawdopodobnym wyjaśnieniem jest to, że mój edytor obrazów (GIMP) dodał całkiem sporo meta-informacji do plików PNG, czego nie robi w przypadku BMP.
Nieskompresowany TGA zachowywał się podobnie do BMP w zakresie rozmiaru pliku przed i po skompresowaniu, podczas gdy kompresja skompresowanego pliku TGA została dodatkowo poprawiona przez ZIP, chociaż nie tak bardzo, jak wersje nieskompresowane.
Warto eksperymentować z innymi algorytmami niż deflacja i innymi ustawieniami siły kompresji. Która kombinacja przyniesie najlepsze rezultaty, prawdopodobnie zależy od stylu twoich tekstur. Możesz również rozważyć porównanie obciążenia gry i mieć wpływ na wydajność dekompresyjną w podejmowaniu decyzji o używanym ustawieniu.
Dolna linia: Jeśli chcesz uniknąć podwójnej kompresji przy zachowaniu niskiej rozmiar pliku, można użyć PNG
z Store
algorytmem zip lub BMP
z algorytmem kompresji zip.