Представлен быстрый упаковщик текстур ETC2

19 сентября 2016 года

Инженеры из компаний Google и Blue Shift опубликовали открытую реализацию упаковщика текстур на базе алгоритма сжатия ETC2 (Ericsson Texture Compression), обеспечивающего высокую эффективность сжатия при сохранении качества исходного изображения. Формат ETC2 включён в стандарт OpenGL ES 3 и не требует выплаты отчислений за использование запатентованных технологий. Код распространяется под лицензией Apache 2.0.

Распространяется как инструментарий для сжатия текстур в командной строке, так и библиотека для применения в сторонних проектах. Основное внимание при разработке уделено скорости кодирования, что позволяет заметно сократить время компиляции игровых приложений, поставляемых с большим набором ресурсов, а также уменьшить размер итогового пакета. В том числе, инструментарий может помочь сократить размер приложений для устройств виртуальной реальности, которые требуют наличия значительно большего объёма высококачественных текстур.

Для того, чтобы ощутить насколько назрела необходимость появления быстрого упаковщика можно привести следующие сведения: наиболее популярный упаковщик Mali GPU Texture Compression tool (Архивная копия от 27 января 2017 на Wayback Machine) в среднем тратит около 640 секунд (10 минут) на одну текстуру. В типичной игре на базе движка Unity поставляется от 500 до 1500 текстур, т.е. на упаковку всех текстур уходит от 3 до 12 дней. В ситуации приложений для работы с виртуальной реальностью объём текстур и время на их упаковку увеличивается в 2-4 раза.

Новый упаковщик тратит на сжатие текстуры в среднем 10 секунд, т.е. работает в 64 раза быстрее упаковщика Mali. Подобного ускорения удалось добиться благодаря тонким настройкам режимов работы, многопоточной архитектуре и реализации упорядоченного поиска блоков с учётом их типов (ETC2 разбивает изображение на блоки 4x4, каждый блок может быть 10 типов, что для картинки 1024x1024 требует выбора оптимального варианта из 10⁶⁵⁵³⁶ комбинаций).

Источники

править


 
 
Creative Commons
Эта статья содержит материалы из статьи «Представлен быстрый упаковщик текстур ETC2», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.