Как загрузить ассеты в юнити
Assets created outside of Unity must be brought in to Unity by having the file either saved directly into the “Assets” folder of your project, or copied into that folder. For many common formats, you can save your source file directly into your project’s Assets folder and Unity will be able to read it. Unity will notice when you save new changes to the file and will re-import as necessary.
When you create a Unity Project, you are creating a folder — named after your project — which contains the following subfolders:
The Assets folder is where you should save or copy files that you want to use in your project.
The contents of the Project Window in Unity shows the items in your Assets folder. So if you save or copy a file to your Assets folder, it will be imported and become visible in your Project Window.
Unity автоматически определит файлы, как только они будут добавлены в папку Assets вашего проекта. Если вы поместите любой ассет в вашу папку Assets, вы увидите как он появится в окне Project .
If you drag a file into Unity’s Project Window from your computer (eg, from the Finder on Mac, or from Explorer on Windows), it will be copied into your Assets folder, and will appear in the Project window.
The items you see in your Project window represent (in most cases) actual files on your computer, and if you delete them within Unity, you are deleting them from your computer too.
The above image shows an example of a few files and folders inside the Assets folder of a Unity project. You can create as many folders as you like and use them to organise your Assets.
You’ll notice in the image above that there are .meta files listed in the file system, but not visible in Unity’s Project Window. Unity creates these .meta files for each asset and folder, but they are hidden by default, so you may not see them in your Explorer/Finder either.
They contain important information about how the asset is used in the project and they must stay with the asset file they relate to, so if you move or rename an asset file in Explorer/Finder, you must also move/rename the meta file to match.
The simplest way to safely move or rename your assets is to always do it from within Unity’s project folder. This way, Unity will automatically move or rename the corresponding meta file. If you like, you can read more about .meta files and what goes on behind-the-scenes during the import process.
If you want to bring collections of assets into your project, you can use Asset Packages. See Asset Packages for more details.
Some common types of Asset
Image Files
Most common image file types are supported, such as BMP, TIF, TGA, JPG, and PSD. If you save your layered Photoshop (.psd) files into your Assets folder, they will be imported as flattened images. You can find out more about importing images with alpha channels from photoshop, or importing your images as sprites
- Звуковые файлы If you save your 3D files from most common 3D software packages in their native format (eg, .max, .blend, .mb, .ma) into your Assets folder, they will be imported by calling back to your 3D package’s FBX export plugin (*). Alternatively you can export as FBX from your 3D app into your Unity project. Read more about importing 3D files from your 3D app.
Меши и анимации
Какой 3Д пакет бы вы не использовали, Unity будет импортировать меши и анимации из каждого файла. Для списка приложений поддерживаемых Unity, см. это страницу.
Для того чтобы можно было импортировать файл с мешем, не обязательно включать в него анимацию. Если вы используете анимации, вы можете сделать выбор: импортировать все анимации из одного файла или из разных файлов, каждый из которых содержит по одной анимации. Для более подробной информации об импорте анимации, пожалуйста, посмотрите эту часть руководства.
Audio Files
If you save uncompressed audio files into your Assets folder, they will be imported according to the compression settings specified. Read more about importing audio files.
Типы ассетов In all cases, your original source file is never modified by Unity, even though within Unity you can often choose between various ways to compress, modify, or otherwise process the asset. The import process reads your source file, and creates a game-ready representation of your asset internally, matching your chosen import settings. If you modify the import settings for an asset, or make a change to the source file in the Asset folder, will cause Unity to re-import the asset again to reflect your new changes.
Note: Importing native 3D formats requires the 3D application to be installed on the same computer as Unity. This is because Unity uses the 3D application’s FBX exporter plug-in to read the file. Alternatively, you can directly export as FBX from your application and save into the Projects folder.
- Asset Packages
- Importing Meshes
- 3D форматы
- Animation Import
- Материалы и шейдеры
- Текстуры и видео
- Редактор спрайтов
- Упаковщик спрайтов
- Процедурные материалы
- Аудио файлы
- Модули трекера
Импорт ассетов
Вы можете перенести ресурсы, созданные вне Unity, в свой проект Unity. Для этого вы можете либо экспортировать файл непосредственно в папку Assets вашего проекта, либо скопировать его в эту папку. Для многих распространенных форматов вы можете сохранить исходный файл непосредственно в папке Assets вашего проекта, и Unity сможет его прочитать. Unity также определяет, когда вы сохраняете новые изменения в файле, и при необходимости повторно импортирует файлы.
Когда вы создаете проект Unity, Unity создает папку (названную в честь вашего проекта), которая содержит следующие подпапки:
- Temp
- Library
- Assets
- ProjectSettings
- Logs
- Packages
Вы можете сохранить или скопировать файлы, которые хотите использовать в своем проекте, в папку Assets , а также использовать Окно проекта Окно, в котором отображается содержимое папки Активы (вкладка «Проект») Подробнее
См. Словарь внутри Unity, чтобы просмотреть содержимое вашего Assets . Поэтому, если вы сохраните или скопируете файл в папку Assets , Unity импортирует его и отобразит в окне вашего проекта.
Когда вы изменяете файл в Unity, Unity не изменяет ваш исходный файл, хотя часто вы можете выбирать между различными способами сжатия, изменения или иной обработки ресурса в Unity. Вместо этого процесс импорта считывает ваш исходный файл и создает внутреннее представление вашего актива, готовое к игре, в соответствии с выбранными вами настройками импорта. Если вы изменяете настройки импорта для ресурса или вносите изменения в исходный файл в папке Assets , Unity повторно импортирует ресурс, чтобы отразить ваши изменения.
Предупреждение. В большинстве случаев элементы, отображаемые в окне вашего проекта, представляют собой реальные файлы на вашем компьютере. Если вы удалите их в окне проекта редактора Unity, вы также удалите их со своего компьютера.
Unity автоматически обнаруживает файлы по мере их добавления в папку Assets или при их изменении. Когда вы помещаете какой-либо ресурс в папку Assets , он появляется в окне вашего проекта.
Если вы перетащите файл из файлового браузера вашего компьютера в окно проекта Unity, Unity сделает копию и поместит ее в вашу папку Assets . Затем вы можете получить доступ к этой копии из окна проекта.
Чтобы добавить в свой проект коллекции ресурсов из другого проекта Unity, вы можете использовать пакеты ресурсов Набор файлов и данных из проектов Unity или элементов проектов, которые сжаты и хранятся в одном файле, подобно Zip-файлам, с расширением .unitypackage . Пакеты ресурсов — это удобный способ совместного использования и повторного использования проектов и коллекций ресурсов Unity. Подробнее
См. в Словарь .
Настройки импорта объектов
Самый простой способ безопасно переместить или переименовать ресурсы — всегда делать это из папки проекта Unity. Таким образом, Unity автоматически перемещает или переименовывает соответствующий метафайл. Подробнее о файлах .meta и процессе импорта см. в разделе Как Unity импортирует ресурсы.
Каждый тип ресурса, который поддерживает Unity, имеет набор настроек импорта, которые влияют на внешний вид или поведение ресурса. Чтобы просмотреть настройки импорта актива, выберите актив в представлении проекта. Параметры импорта для этого актива появятся в Инспекторе окне Unity, в котором отображается информация о текущем выбранном игровом объекте, активе или настройках проекта. , что позволяет просматривать и редактировать значения. Дополнительная информация
См. в Словарь . Отображаемые параметры зависят от типа выбранного объекта.
Например, настройки импорта изображения позволяют выбрать, будет ли Unity импортировать его как текстуру, двухмерный спрайт двухмерный графические объекты. Если вы привыкли работать в 3D, спрайты — это, по сути, просто стандартные текстуры, но есть специальные приемы комбинирования текстур спрайтов и управления ими для повышения эффективности и удобства во время разработки. Подробнее
См. в Словарь или карта нормалей Тип текстуры карты рельефа, который позволяет добавлять детали поверхности, такие как неровности, бороздки и царапины, к модели, которые ловят свет, как если бы они представлены реальной геометрией. Подробнее
См. в Словарь . Параметры импорта для файла FBX позволяют настроить масштаб, создать нормали или карту освещения предварительно обработанную текстуру, содержащую эффекты источников света на статических объектах сцены. Карты освещения накладываются поверх геометрии сцены для создания эффекта освещения. Подробнее
Просмотр в Словарь , а также разделение и обрезка анимационные клипы Анимационные данные, которые можно использовать для анимированных персонажей или простых анимаций. Это простое «единичное» движение, такое как (один конкретный пример) «Простояние», «Ходьба» или «Бег». Подробнее
См. в Словаре , определенном в файле.
Для других типов объектов настройки импорта выглядят иначе. Различные настройки, которые вы видите, относятся к типу выбранного актива. Вот пример аудиоресурса с соответствующими настройками импорта, показанными в инспекторе:
Если вы разрабатываете кроссплатформенный проект, вы можете переопределить настройки «по умолчанию» и назначить разные настройки импорта для каждой платформы.
Обработка объектов
Unity считывает и обрабатывает любые файлы, которые вы добавляете в папку Assets , и преобразует содержимое файла во внутренние данные, готовые к игре. Сами файлы активов остаются без изменений, а внутренние данные хранятся в папке проекта Library . Эти данные являются частью базы данных активов редактора Unity.
Использование внутренних форматов для ресурсов позволяет Unity иметь внутренние версии ваших ресурсов, готовые к использованию во время выполнения в редакторе, и хранить ваши неизмененные исходные файлы в папке Assets . Различие между файлами активов и внутренними версиями означает, что вы можете быстро отредактировать файл ресурсов, и редактор автоматически включит изменения. Например, вы можете сохранять файлы .psd непосредственно в папку Assets , но оборудование, такое как мобильные устройства и видеокарты ПК, может не обрабатывать этот формат напрямую, чтобы визуализировать их как текстуры. Вместо этого Unity может преобразовать внутреннюю версию в формат, который могут обрабатывать эти платформы.
Unity хранит внутреннее представление ваших ресурсов в папке Library , которая ведет себя как папка кеша. Как пользователь, вам никогда не придется вручную изменять папку Library ; если вы это сделаете, вы можете негативно повлиять на свой проект в редакторе Unity. Это также означает, что вы не должны включать папку Library в контроль версий A система управления изменениями файлов. Вы можете использовать Unity в сочетании с наиболее распространенными инструментами контроля версий, включая Perforce, Git, Mercurial и PlasticSCM. Дополнительная информация
См. в Словарь .
Примечание. Если ваш проект не открыт в Unity, вы можете безопасно удалить папку Library , поскольку Unity может восстановить все свои данные из папки Assets и ProjectSettings при следующем запуске проекта.
Сложные объекты
В некоторых случаях Unity может создавать несколько ресурсов при импорте одного файла ресурсов. Например:
- Когда 3D-файл (например, файл FBX) определяет материалы или содержит встроенные текстуры. Для этого Unity извлекает материалы и встроенные текстуры как отдельные ресурсы.
- Если вы хотите импортировать файл изображения в виде нескольких 2D-спрайтов. Вы должны использовать двухмерный редактор спрайтов, чтобы определить несколько спрайтов из одного графического изображения. Unity отображает каждый спрайт, определенный в редакторе, как отдельный ресурс спрайта в окне проекта.
- Когда 3D-файл содержит несколько временных шкал анимации или несколько клипов. Чтобы справиться с этим, Unity автоматически определяет отдельные временные шкалы анимации или клипы на основе своих настроек импорта анимации. Результирующие несколько анимационных клипов отображаются как отдельные ресурсы анимационного клипа в окне проекта.
См. также
- Пакеты ресурсов
- Материалы и шейдеры
- Текстуры и видео
- Редактор спрайтов
- Упаковщик спрайтов Упаковка графики из нескольких текстур спрайтов вместе внутри единая текстура, известная как атлас. Unity предоставляет утилиту Sprite Packer для автоматизации процесса создания атласов из отдельных текстур спрайтов. Подробнее
См. в Словарь - Аудиофайлы
- Модули отслеживания
Как мне импортировать модели из моего 3D редактора?
Для импорта 3D модели в Unity вы должны перетащить файл модели в окно проекта.
В инспекторе > вкладка Model Unity поддерживает импорт моделей из всех популярных 3D редакторов.
Особенности импорта из разных 3D пакетов смотрите на следующих страницах:
Текстуры
- Храните текстуры в папке под названием Textures рядом с экспортируемым мешем в вашем проекте Unity. Это позволит Unity найти текстуру и автоматически подключить её к созданному материалу. Для получения дополнительной информации, обратитесь к разделу Текстуры.
3D форматы
Импортирование мешей в Unity может быть выполнено с помощью двух основных типов файлов:
- Экспортированные 3D форматы файлов, такие как .FBX или .OBJ
- Собственные файлы 3D приложений, например такие как .Max и .Blend файлы из 3D Studio Max и Blender.
Любой из этих типов позволит вам добавлять свои меши в Unity, но есть соображения относительно того типа, который вы выберите:
Экспортированные 3D файлы
Unity может читать .FBX, .dae (Collada), .3DS, .dxf и .obj файлы, obj или Collada экспортеры могут быть найдены для многих приложений, точно также как FBX экспортеры могут быть найдены здесь
Преимущества:
- Экспортируйте только необходимые данные
- Проверяемые данные (перед импортированием в Unity, переимпортируйте в 3D пакет)
- Как правило файлы меньшего размера
- Поддерживает модульный подход — к примеру разными компонентами для интерактивности и типов коллизий
- Поддерживает другие 3D пакеты, чьи форматы не поддерживаются у нас напрямую
Недостатки:
- Может замедлять процесс прототипирования и итераций
- Легче потерять след между исходной (рабочий файл) и игровой версией данных (к примеру экспортированный FBX файл)
Собственные файлы 3D приложений
Unity также может импортировать, путём конвертации, файлы: Max, Maya, Blender, Cinema4D, Modo, Lightwave и Cheetah3D , например, .MAX, .MB, .MA и др.
Преимущества:
- Быстрый процесс итерации (для повторного импортирования в Unity сохраните исходный файл)
- Изначально просто
Недостатки:
- На машинах, задействованных в работе над Unity проектом, должны быть установлены лицензионные копии данного программного обеспечения
- Файлы, содержащие ненужные данные могут стать неоправданно большими
- Большие файлы могут замедлить процесс автосохранения
- Меньше проверяется, поэтому труднее устранить ошибки
Модели
Файлы моделей, размещенные в папке Assets внутри проекта Unity, автоматически импортируются и сохраняются как ассеты Unity.
Файл модели может содержать 3D модель персонажа, здания или части мебели. Модель импортируется в виде набора ассетов. В окне Project(проект) главный импортированный объект представляется в виде Model Prefab(префаб модели). Обычно также существует несколько Mesh объектов, на которые ссылается Model Prefab.
Файл модели может также содержать данные анимации, которые можно использовать для анимации данной модели или других моделей. Данные анимации импортируется как один или несколько Анимационных Клипов.
![Mesh Filter вместе с Mesh Renderer позволяет появляться модели на экране.](../uploads/Main/MeshExample40.png)
Настройки импорта для мешей
Import Settings для модели будут показаны в закладке Model инспектора FBX импортера, когда модель выделена. Это влияет на меш, его нормали и импортированные материалы. Настройки применяются для каждого ассета на диске, поэтому, если вам нужен ассет с другими настройками, создайте (и соответственно переименуйте) копию файла.
Хотя изначально настроек по умолчанию может быть достаточно, будет лучше, если вы изучите список настроек, перечисленных ниже. Они могут помочь определить, что вы желаете сделать с игровым объектом.
Некоторые общие корректировки, для примера, могут быть следующими:
- Scale — это фактор масштаба используемый для компенсации разницы в единицах измерения между Unity и инструментом 3d моделирования — он меняет масштаб всего файла. Обычно, можете просто установить 1. Заметьте, что физический движок Unity смасштабирован так, что 1 единица измерения эквивалентна 1 метру. Это важно, так как если вы захотите получить корректное физическое поведение, вам следует получить корректно отмасштабированную модель в оригинальном приложении для моделирования. Если же этого нельзя сделать или у вас нет контроля над модификацией меша, масштаб модели может быть откорректирован здесь.
- Generate colliders — эта опция создаст сетку коллизии чтобы позволить вашей модели сталкиваться с другими объектами.
- Material Naming and Search — эта опция поможет автоматически настроить ваши материалы и определить местоположение текстур
Свойство: | Функция: | |
---|---|---|
Меши | ||
Scale Factor | Физическая система Unity предполагает, что 1 метр в игровом мире будет равен 1 единице в импортируемом файле. Если вы предпочитаете моделировать в другом масштабе, тогда вы можете компенсировать разницу здесь. По-умолчанию, .fbx, .max, .jas и .c4d файлы имеют масштаб 0.01, .mb, .ma, .lxo, .dxf, .blend и .dae масштаб 1.0, а .3ds файлы имеют масштаб 0.1. | |
Mesh Compression | Увеличение этого значение уменьшит размер файла для меша, но может привести к неровностям. Лучше всего поднять значение настолько высоко, насколько это возможно без появления большой разницы с несжатой версией. Это полезно для оптимизации размера игры. | |
Read/Write Enabled | Включает возможность записи меша в процессе исполнения, так что вы можете модифицировать данные; это создает копию в памяти. Когда эта опция выключена, это экономит память, так как Unity может выгружать копию данных меша в процессе игры. Однако, если вы масштабируете или инстанциируете меши в процессе исполнения с неравномерным масштабом, может потребоваться включение “Read/Write Enabled” в их настройках импорта. Причина этого в том, что неравномерный масштаб требует чтобы данные меша сохранялись в памяти. Обычно это определяется во время сборки, но с мешами, которые масштабируются или инстанциируются в процессе исполнения, вам нужно задавать это самостоятельно. Иначе они могут не отображаться корректно в игровых сборках. | |
Optimize Mesh | Эта опция определяет порядок, в котором будут перечислены треугольники меша. | |
Import Blendshapes | This option allows BlendShapes to be imported with your mesh. | |
Generate Colliders | Если активна эта опция, ваш меш будет импортирован с автоматически присоединенной сеткой столкновений. Эта опция полезна для быстрой генерации сетки столкновений для геометрии окружения, но ее нужно избегать для объектов, которые будут перемещаться. | |
Swap UVs | Используйте эту опцию если объект с наложенными картами освещения использует неправильные UV каналы. Ваши первичные и вторичные UV каналы будут поменяны между собой. | |
Generate Lightmap UVs | Используйте эту опцию для создания второго UV канала, который будет использоваться для карт освещения. | |
Нормали и касательные | ||
Normals | Определяет должны ли, и если да, то как, вычисляться нормали. Это полезно для оптимизации размеров игры. | |
Import | Настройка по умолчанию. Импортирует нормали из файла. | |
Calculate | Вычисляет нормали, основываясь на Smoothing angle . Если выбран именно этот метод, Smoothing Angle становится включенным. | |
None | Дезактивирует нормали. Используйте данную опцию если меш ни использует карты нормалей, ни подвергается динамическому освещению. | |
Tangents | Определяет должны ли, и если да, то как, вычисляться касательные и бинормали. Это полезно для оптимизации размеров игры. | |
Import | Касательные и бинормали импортируются из файла. Эта опция доступна только для FBX, Maya и 3dsMax файлов и только когда нормали также загружены из файла. | |
Calculate | Настройка по умолчанию. Вычисляет касательные и бинормали. Эта опция доступна только когда нормали или импортированы, или вычислены. | |
None | Отключает касательные и бинормали. Меш не будет иметь касательных, поэтому шейдеры, работающие с картами нормалей, не будут доступны. | |
Smoothing Angle | Данная опция устанавливает насколько острой должна быть грань, чтобы считаться жестким ребром. Это также используется чтобы разделить касательные карты нормалей. | |
Split Tangents | Активируйте эту опцию, если карта нормалей освещения разбита швами на вашем меше. Обычно это применимо только к персонажам. | |
Материалы | ||
Import Materials | Отключите эту опцию, если вы не хотите чтобы генерировались материалы. Вместо этого будет использован материал Default-Diffuse. | |
Material Naming | Определяет как именуются материалы Unity: | |
By Base Texture Name | Имя диффузной текстуры импортированного материала, которое будет использовано для названия материала Unity. В случае, когда диффузная текстура материала не задана, Unity будет использовать имя импортированного материала. | |
From Model’s Material | Для названия Unity материала будет использовано имя импортированного материала. | |
Model Name + Model’s Material | Для названия Unity материала будет использовано сочетание имени файла модели и импортированного материала. | |
Material Search | Определяет, где Unity будет пытаться найти существующие материалы, используя имя, заданное параметром Material Naming : | |
Local | Unity будет пытаться найти существующий материал только в “локальной” папке Materials, например, поддиректория Materials, которая расположена в той же директории, что и файл модели. | |
Recursive-Up | Unity будет пытаться найти существующие материалы во всех поддиректориях Materials во всех родительских папках вплоть до папки Assets. | |
Everywhere | Unity будет пытаться найти существующие материалы во всех папках Unity проекта. |
Смотрите также
- Моделирование оптимизированных персонажей
- Настройки импорта меша
- Как мне исправить вращение импортированной модели?
Importing from the Asset Store
Unity Магазин ( Asset Store ) — это растущая библиотека, в которой собраны бесплатные и коммерческие ассеты, созданные как Unity Technologies, так и членами сообщества. Доступен большой выбор ассетов — текстуры, модели и анимации, примеры проектов, учебники и расширения для редактора. Ассеты доступны через простой интерфейс, встроенный в редактор Unity, через него можно скачать и импортировать непосредственно в ваш проект.
Unity users can become publishers on Asset Store, and sell content they have created. To find out more, see Asset Store Publishing.
Asset Store. Доступ и навигация
Вы можете открыть окно Asset Store выбрав в главном меню Window->AssetStore . При первом посещении вам будет предложено зарегистрировать бесплатный аккаунт, который будет использоваться для доступа к магазину.
Магазин имеет интерфейс браузера, который позволяет искать по словам или просматривать товары (packages) и категории. В левой части главной панели инструментов находятся знакомые кнопки навигации, для перемещения по истории просмотренных страниц:-
Справа от них находятся кнопки просмотра менеджера загрузок и содержимого корзины покупок.
Менеджер загрузок позволяет просматривать пакеты, которые вы купили, а также искать и устанавливать обновления. Кроме того, стандартные пакеты, поставляемые с Unity, можно также просматривать и добавлять в проект через данный менеджер.
Расположение загруженных ассетов
Вам редко когда понадобится (если вообще понадобится) прямой доступ к файлам, загруженным через Asset Store. Но, если вам потребуется, вы можете их найти в
~/Library/Unity/Asset Store
C:\Users\accountName\AppData\Roaming\Unity\Asset Store
..на Windows. Эти папки содержат подпапки, которые соответствуют продавцам на Asset Store, а ассеты находятся в соответствующих подпапках.