Unity Assets Viewer: просмотр и извлечение ресурсов игр на Unity

Файл resources.assets или sharedassets0.assets из папки игры не открывается двойным кликом, а стандартный просмотрщик Windows выдаёт ошибку «формат не поддерживается» — это нормально, потому что архивы Unity имеют собственную бинарную структуру, понятную только специализированным инструментам. Чтобы посмотреть текстуры, модели, звуки и текстовые данные внутри таких файлов, нужен отдельный просмотрщик — Unity assets viewer.

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

Что представляют собой файлы ресурсов Unity

Игры и приложения, собранные на движке Unity, хранят большую часть контента в специальных контейнерах. Внутри могут лежать текстуры, аудиоклипы, 3D-модели, анимации, шейдеры, шрифты и текстовые данные. Сам движок читает эти архивы напрямую, но для пользователя они выглядят как «чёрный ящик».

Типичные файлы, с которыми приходится работать:

  • 📦 .assets — основные контейнеры ресурсов (например, sharedassets0.assets, resources.assets);
  • 📦 .unity3d — упакованные веб-сборки и ассет-бандлы старых версий;
  • 📦 .bundle / .ab — Asset Bundle, часто встречаются в мобильных и онлайн-играх;
  • 📦 .resS — сопутствующие файлы с потоковыми данными (текстуры, звук) рядом с .assets;
  • 📦 .resource — аудиоданные, связанные с файлами ресурсов.

Часто ресурсы разбиты на несколько файлов: sharedassets0.assets, sharedassets1.assets и так далее. Они связаны между собой, поэтому просмотрщик обычно загружает всю папку целиком, а не один файл.

Популярные программы для просмотра ресурсов Unity

Готового «официального» просмотрщика от Unity Technologies для чужих игр не существует — редактор Unity открывает только собственные проекты. Поэтому используются сторонние инструменты, разработанные энтузиастами. Ниже — наиболее известные из них.

ПрограммаНазначениеПлатформаОсобенности
AssetStudioПросмотр и экспорт ресурсовWindowsОткрытый код, предпросмотр текстур, моделей, аудио
AssetRipperВосстановление проекта UnityWindows, Linux, macOSПытается собрать из ассетов редактируемый проект
UABE (Unity Assets Bundle Extractor)Редактирование и замена ресурсовWindowsПодходит для модов: можно записать изменённые файлы обратно
UnityPyРабота через скрипты PythonКроссплатформенноБиблиотека для автоматизации извлечения

Выбор зависит от задачи. Если нужно просто посмотреть, что лежит внутри, и вытащить пару текстур — достаточно AssetStudio. Если требуется массовая обработка сотен архивов, удобнее скрипты на базе UnityPy. Для моддинга с записью изменений обратно в архив традиционно используют UABE.

⚠️ Внимание: скачивайте такие инструменты только с официальных страниц проектов (как правило, это GitHub-репозитории разработчиков). Сторонние «сборники программ» нередко подсовывают устаревшие или модифицированные версии с вредоносным кодом.

📊 Для какой задачи вам нужен просмотрщик ресурсов Unity?
Посмотреть и сохранить текстуры или звуки
Создать мод с заменой ресурсов
Изучить устройство игры
Восстановить проект из сборки

Как открыть файл .assets в AssetStudio

Рассмотрим базовый порядок действий на примере AssetStudio — это один из самых распространённых просмотрщиков. Точные названия пунктов меню могут немного отличаться в зависимости от версии программы, поэтому сверяйтесь с интерфейсом вашей сборки.

Общий алгоритм выглядит так:

  • 🔍 Скопируйте папку с ресурсами игры в отдельное место — работать лучше с копией, а не с оригиналом;
  • 🔍 Запустите программу и через меню File → Load Folder укажите папку с файлами .assets и .resS;
  • 🔍 Дождитесь окончания загрузки — большие игры обрабатываются заметное время;
  • 🔍 Перейдите на вкладку Asset List и отфильтруйте объекты по типу: Texture2D, AudioClip, Mesh, TextAsset;
  • 🔍 Выделите нужные элементы и экспортируйте их через меню Export.

После загрузки в списке появится дерево объектов с указанием типа и размера. Текстуры и спрайты обычно можно предварительно просмотреть прямо в окне программы, аудио — прослушать. Модели экспортируются в форматы вроде .fbx или .obj, текстуры — в .png или .tga, звук — в .wav или .ogg.

☑️ Проверка перед извлечением ресурсов

Выполнено: 0 / 5

Извлечение текстур, моделей и звука

Каждый тип ресурсов имеет свои нюансы при экспорте. Текстуры обычно извлекаются без проблем, но могут храниться в сжатых форматах (например, DXT или ASTC) — хороший просмотрщик конвертирует их в обычный .png автоматически. Если картинка выглядит искажённой или с неверными цветами, возможная причина — нестандартный формат сжатия, который конкретная версия программы декодирует не полностью.

С 3D-моделями сложнее. Меш (Mesh) сам по себе — только геометрия. Материалы, текстуры и анимации хранятся отдельными объектами, и собрать их воедино при экспорте удаётся не всегда. Часто модель приходится «дособирать» вручную в редакторе вроде Blender, назначая текстуры заново.

Звуки и музыка экспортируются проще всего: фильтруете список по типу AudioClip и сохраняете. Учтите, что короткие эффекты могут быть нарезаны на множество мелких файлов без говорящих имён — искать нужный придётся прослушиванием.

Типичные ошибки и их решения

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

Файл не загружается или программа падает. Возможная причина — несовместимость версии: формат ресурсов меняется от версии к версии Unity, и старые сборки просмотрщиков не понимают файлы новых игр. Проверьте, есть ли обновление инструмента. Также убедитесь, что вы загружаете папку целиком, а не одиночный файл, оторванный от связанных .resS.

Ресурсы видны, но экспортируются «пустыми» или битыми. Такое бывает, если игра использует шифрование или собственную упаковку поверх стандартного формата — это встречается в онлайн-играх, где разработчики защищают контент. Универсального решения здесь нет: каждый случай индивидуален, и вмешательство может нарушать условия использования игры.

Не открывается Asset Bundle из мобильной игры. Проверьте, не сжат ли бандл — некоторые инструменты требуют предварительной распаковки. Также мобильные текстуры часто в форматах ASTC или ETC, которые не каждый просмотрщик корректно отображает.

⚠️ Внимание: не переименовывайте и не перемещайте оригинальные файлы игры, пока экспериментируете. Игра при запуске проверяет целостность ресурсов, и изменённый архив может привести к вылетам или блокировке аккаунта в онлайн-проектах. Работайте только с копиями.

Почему в списке ресурсов тысячи объектов без названий

При сборке проекта Unity часто заменяет понятные имена файлов числовыми идентификаторами (Path ID). Поэтому вместо "hero_sword.png" вы видите безликие записи. Ориентироваться помогают тип объекта, размер и предпросмотр — в AssetStudio можно включить отображение миниатюр текстур.

Моддинг и запись изменённых ресурсов обратно

Отдельный сценарий — не просто посмотреть, а заменить ресурсы: перевести текст, поменять текстуры, подставить свои модели. Для этого нужны инструменты, умеющие записывать данные обратно в архив, например UABE. Принцип такой: открываете архив, находите нужный объект, импортируете замену и сохраняете модифицированный файл.

Здесь важно понимать ограничения. Замена должна соответствовать оригиналу по формату и примерно по размеру: текстуру нельзя просто заменить звуковым файлом, а текстура в неподдерживаемом формате сжатия может отображаться в игре с артефактами. Перед заменой всегда сохраняйте резервную копию оригинального архива — это единственный способ быстро откатить неудачную правку.

Для игр со встроенной поддержкой модов (через Steam Workshop или официальные инструменты разработчика) ручная правка архивов обычно не нужна вовсе — используйте штатные механизмы, это безопаснее и не ломает обновления.

Правовые аспекты использования чужих ресурсов

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

Особенно строго к этому относятся в онлайн-играх: модификация файлов может расцениваться как вмешательство в работу ПО и привести к блокировке аккаунта. Перед любым публичным использованием извлечённого контента ознакомьтесь с лицензионным соглашением конкретной игры, а при сомнениях — запросите разрешение у правообладателя.

⚠️ Внимание: распространение извлечённых ассетов (например, выкладывание моделей или музыки из игры в открытый доступ) — это нарушение авторских прав независимо от того, насколько легко они извлекаются технически.

Часто задаваемые вопросы

Чем открыть файл .assets без установки Unity?

Для этого и существуют сторонние просмотрщики: AssetStudio, UABE и другие. Редактор Unity для чужих собранных игр не подходит — он работает только с проектами в исходном виде.

Почему AssetStudio не открывает файлы новой игры?

Вероятная причина — формат ресурсов новой версии Unity, который ваша сборка программы ещё не поддерживает. Проверьте наличие обновлений инструмента. Если игра использует шифрование, стандартными средствами архив может не открыться вовсе.

Можно ли извлечь ресурсы из мобильной игры на Android?

Да, если получить доступ к файлам игры (обычно это данные внутри APK или в папке данных). Asset Bundle и .assets из мобильных сборок открываются теми же инструментами, но текстуры могут быть в мобильных форматах сжатия, которые не всегда корректно отображаются.

Забанят ли за использование просмотрщика ресурсов?

Сам по себе просмотр файлов на вашем компьютере игра «не видит». Риск появляется при модификации файлов онлайн-игры или использовании изменённых ресурсов в игровом процессе — это может обнаружить античит. Одиночные игры такой проблемой обычно не обладают.

Можно ли вернуть извлечённые ресурсы обратно в проект Unity?

Частично. Инструменты вроде AssetRipper пытаются восстановить редактируемый проект из сборки, но результат никогда не бывает идентичен оригиналу: скрипты восстанавливаются не полностью, а структура проекта теряется. Полноценно вернуть исходники таким способом нельзя.