Я не оптимизировал депакер дехруста!
Использовать LZ-пакеры или же Хаффмана для распаковки спрайтов на лету не эффективно. LZ - требует окно уже распакованных данных, а Хаффман очень тормозной. Идеальных вариант - это паковать только повторяющиеся байты простым алгоритмом. Тогда скорость распаковки на лету будет сравнима с обычным выводом спрайта. Конечно, это эффективно только если у спрайта есть много пустых одинаковых байт.
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Скорее всего, алгоритм Vitamin лучше всех пока.
А вот еще у большинства спрайтов границы плавные, а внутри всё или почти всё заполнено. Может, еще это как-то учитывать при кодировании.
Вертикальные границы из двух чередующихся байт (размытие шахматной текстурой) упаковываются в два байта на знакоместа. Подобные горизонтальные границы в 3 или 4 байта.
SamStyle в своем редакторе анимации также поддержал вариацию на тему алгоритма BitPack- оптимизирует сжатие сплошных фонов. Так что рекомендую также его попробовать.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)