Компрессия ресурсов

В «Вердж3Д» файлы сцен могут быть сжаты с помощью высокоэффективного алгоритма сжатия LZMA-2, что позволяет значительно уменьшить размер файлов. В то же время LZMA обеспечивает быструю декомпрессию на стороне браузера. Типичные показатели сжатия, наблюдаемые для сцен «Вердж3Д», составляют: 20x для файлов .gltf и 6x для файлов .bin.

Когда нужно использовать компрессию

Использование сжатия ресурсов особенно рекомендуется в следующих случаях:

Сравнение размеров файлов: необработанный файл, файл сжатый с помощью ГЗИП, файл сжатый с помощью LZMA

Экспорт сжатых файлов

«Вердж3Д» поддерживает загрузку файлов сцен, сжатых в формате .xz, который включает алгоритм сжатия LZMA. Чтобы включить автоматическое создание файлов .xz при экспорте, достаточно включить соответствующую опцию в настройках экспорта.

Использование сжатых файлов

Сжатые .xz файлы (например, my_awesome_app.gltf.xz и my_awesome_app.bin.xz) должны появиться рядом с оригинальными. Осталось только включить их загрузку в вашем приложении. Для этого перейдите в раздел Пазлы...

...и переключитесь на вкладку init:

Перетащите пазл configure application из категории Initialization, если он еще не присутствует в рабочей области, и включите на нем флажок compressed assets:

Наконец, нажмите кнопку Save. Вот и все!

Проверка файлов

Чтобы убедиться, что ваше приложение теперь действительно загружает сжатые активы, запустите ваше приложение (либо из App Manager, либо с веб-сайта, на котором оно развернуто). Откройте консоль браузера и переключитесь на вкладку Сеть.

Перезагрузите приложение, чтобы консоль начала отображать файлы с самого начала. Найдите в списке файлы сцены - если все в порядке, они должны заканчиваться .xz.

В качестве альтернативы, вы можете узнать включены ли сжатые активы в профиле производительности.

Code-Based приложения

Если по каким-то причинам вы не хотите использовать пазлы, выполните следующие шаги, чтобы включить сжатие ресурсов для ваших приложений.

Измените:

const SCENE_URL = 'my_awesome_app.gltf';

на:

const SCENE_URL = 'my_awesome_app.gltf.xz';

в файле your_awesome_app.js.

То же самое относится к файлам .glb и .glb.xz, если они используются вместо .gltf/.bin.

Остались вопросы?

Задайте их на нашем форуме!