.unitypackage → GLB с текстурами · работает в браузере, файлы не покидают твоё устройство
RU

Извлечь текстуры из .unitypackage

Сохрани изображения из пакета Unity в PNG прямо в браузере, без установки Unity, и разберись, какой файл — albedo, normal, metallic или AO.

Перетащи сюда .unitypackage

или

Выбери модель или сцену слева — кнопки превью и GLB появятся выше

Лог


        

Проверено на текущей версии продукта 5 ноября 2026 г. · Опубликовано Unity Asset Exporter.

Перетащи .unitypackage в инструмент на главной странице и нажми Текстуры в PNG (ZIP). Ты получишь ZIP с изображениями из пакета. Файлы PNG и JPG копируются без изменений, остальные поддерживаемые форматы изображений конвертируются в PNG. Всё работает локально в браузере. Ничего не загружается на сервер, Unity и аккаунт не нужны.

Три способа достать изображения

Дерево «Файлы» показывает исходные пути Unity, восстановленные из пакета. О том, как пакет хранит файлы в папках с GUID, читай в статье как открыть .unitypackage без Unity.

Что содержит ZIP с текстурами

В браузерах без API сохранения на диск большие наборы текстур могут скачаться несколькими частями ZIP. В браузерах, где такой API есть, ZIP можно записать прямо на диск.

PSD, HDR и EXR

Для PSD в PNG попадает сведённое изображение. Слои не сохраняются. Если слои нужны, скачай оригинальный .psd из дерева «Файлы».

HDR и EXR проходят тонмаппинг (Reinhard, гамма 2,2) в обычный 8-битный PNG. Для быстрого просмотра этого достаточно, но расширенный динамический диапазон теряется. Для скайбоксов, освещения и любых задач, где нужны реальные значения, используй оригинальный .hdr или .exr из дерева «Файлы» или из ZIP с исходными файлами.

Какая карта за что отвечает

Имена файлов в ассет-паках не всегда понятны. Надёжный источник — материал. Открой файл .mat в дереве «Файлы». Это текст в формате Unity YAML, где перечислены имена слотов со ссылками на их текстуры. Ссылка — это GUID, а не имя файла, поэтому при ручном сопоставлении нужна внимательность. Основные слоты означают следующее:

Текстура metallic-smoothness

Именно эта карта сбивает с толку больше всего. Unity хранит smoothness (гладкость) — величину, обратную roughness: roughness = 1 − smoothness. К тому же она лежит в альфа-канале, где многие просмотрщики изображений не показывают ничего полезного.

ZIP с текстурами не меняет раскладку каналов. _MetallicGlossMap остаётся ровно таким, каким его упаковал Unity. Чтобы использовать его в Principled BSDF в Blender:

  1. Добавь изображение как узел Image Texture и установи для него цветовое пространство Non-Color. В настройках изображения выбери для Alpha режим Channel Packed, чтобы альфа-канал не искажал цветовые каналы.
  2. Подключи выход Color этого узла к узлу Separate Color и направь красный канал в Metallic.
  3. Возьми выход Alpha узла Image Texture, пропусти его через узел Invert Color (или узел Math, вычисляющий 1 − value) и подключи результат к Roughness.

Если подключить альфу напрямую к Roughness, глянцевыми станут участки, которые должны быть шероховатыми, и наоборот. Smoothness в канале A у HDRP _MaskMap нужно инвертировать точно так же.

Цветовое пространство

Albedo и emission — это цветовые данные (sRGB). Карты нормалей, metallic, roughness и AO — нецветовые данные. В Blender установи для этих узлов изображений Non-Color. Карта нормалей, оставленная в sRGB, даёт неправильное затенение. О других проблемах с текстурами в Blender читай в разделе пропавшие текстуры в Blender.

Когда лучше экспортировать GLB

Если тебе нужна модель с текстурами, а не папка с картинками, пропусти ручное подключение. При сборке GLB инструмент находит ссылки на материалы Unity по GUID, используя externalObjects из .meta-файла FBX, назначения материалов в префабах, сопоставление по именам материалов и осторожные запасные варианты. Перечисленные выше слоты он сопоставляет со входами glTF и встраивает поддерживаемые текстуры в один файл. Для карты metallic-smoothness он записывает metallic в синий канал, а 1 − smoothness как roughness — в зелёный, именно так, как ожидает glTF. Карты specular-gloss приближённо переводятся в metallic/roughness. Распознаются и распространённые имена слотов URP, HDRP и авторов ассетов, например _BaseColorMap, _MaskMap и _MetallicSmoothness.

Загрузи модель в превью и нажми Скачать GLB — то, что в превью или Скачать все выбранные в GLB (ZIP), если моделей несколько. Об экспорте одной модели и массовом экспорте рассказано в руководстве по GLB.

Ограничения

Все входные и выходные форматы и их ограничения описаны на странице поддерживаемых форматов.

Частые вопросы

Как конвертировать .unitypackage в PNG?
Открой пакет в инструменте и нажми Текстуры в PNG (ZIP). Форматы вроде TGA, PSD, DDS, TIF, EXR и HDR декодируются в браузере и сохраняются как PNG, а файлы PNG и JPG копируются без изменений.
Почему у меня карта roughness инвертирована?
Unity хранит в альфа-канале карты metallic не roughness, а smoothness. Инвертируй её (roughness = 1 − smoothness), прежде чем подключать к Roughness, или экспортируй GLB — там инструмент сам переупакует её для glTF.
Можно ли получить текстуры без недельного лимита?
Да. Скачивание изображений по одному из дерева «Файлы» всегда бесплатно и даёт оригинальные файлы байт в байт. Ограничены только массовые экспорты в ZIP, и Pro снимает это ограничение.
Сохраняются ли слои PSD и данные HDR?
В ZIP с PNG — нет. Файлы PSD экспортируются как сведённое изображение, а HDR/EXR проходят тонмаппинг в 8-битный PNG. Если нужны слои или полный динамический диапазон, скачай оригинальный файл из дерева «Файлы».
Можно ли извлечь текстуры из файлов игры на Unity?
Нет. Инструмент читает только архивы .unitypackage, а не AssetBundle или файлы UnityFS из собранных игр.