Как добавить 3в модель в unity

от admin

Importing a model

Model files can contain a variety of data, such as meshes, animation rigs and clips, materials and textures. Your file might not contain all of these elements, but you can follow any portion of the workflow that you need to:

For guidelines on how to export Humanoid animation from your 3D modeling software, see Preparing Humanoid Models for export.

Note: Unity’s primary support for Model files A file containing a 3D data, which may include definitions for meshes, bones, animation, materials and textures. More info
See in Glossary is the FBX format. However, you can save your 3D files from most common 3D modeling software in their native format (for example, .max, .blend, .mb, .ma). When Unity finds these file types in your Assets folder, it calls your 3D modeling software’s FBX export plug-in A set of code created outside of Unity that creates functionality in Unity. There are two kinds of plug-ins you can use in Unity: Managed plug-ins (managed .NET assemblies created with tools like Visual Studio) and Native plug-ins (platform-specific native code libraries). More info
See in Glossary , and imports the file. The 3D modeling software must be installed on the same computer as Unity, so in most cases it’s best practice to directly export as FBX from your application into your Assets folder.

Accessing the Import Settings window

No matter what kind of data you want to extract from the Model file, you always start the same way:

Open the Project In Unity, you use a project to design and develop a game. A project stores all of the files that are related to a game, such as the asset and Scene files. More info
See in Glossary window and the Inspector A Unity window that displays information about the currently selected GameObject, asset or project settings, allowing you to inspect and edit the values. More info
See in Glossary so that you can see both at once.

Select the Model A 3D model representation of an object, such as a character, a building, or a piece of furniture. More info
See in Glossary file you want to import from the Asset Any media or data that can be used in your game or project. An asset may come from a file created outside of Unity, such as a 3D Model, an audio file or an image. You can also create some asset types in Unity, such as an Animator Controller, an Audio Mixer or a Render Texture. More info
See in Glossary folder in the Project window.

The Import Settings window opens in the Inspector showing the Model tab by default.

Setting Model-specific and general importer options

The options that are available for SpeedTree Models vs. other Models are very different. For example, the SpeedTree Model tab provides options mostly for setting up transitions between LOD The Level Of Detail (LOD) technique is an optimization that reduces the number of triangles that Unity has to render for a GameObject when its distance from the Camera increases. More info
See in Glossary levels.

Character and animated Models provide more diverse options on their Model tab, which allow you to:

  • Use the Scale Factor and Convert Units properties to adjust how Unity interprets units. For example, 3ds Max uses 1 unit to represent 10 centimeters, whereas Unity uses 1 unit to represent 1 meter.
  • Use the Mesh Compression, Read/Write Enabled, Optimize Mesh, Keep Quads, Index Format, or Weld Vertices properties to reduce resources and save memory.
  • You can enable the Import BlendShapes option if the Model file came from Maya or 3ds Max, or any other 3d modeling application that supports morph target animation.
  • You can enable the Generate Colliders option for environment geometry.
  • You can enable specific FBX settings, such as Import Visibility, or Import Cameras and Import Lights.
  • For Model files that contain only Animation, you can enable the Preserve Hierarchy option to prevent hierarchy mismatch in your skeleton.
  • You can set the Swap UVs and Generate Lightmap UVs if you are using a Lightmap A pre-rendered texture that contains the effects of light sources on static objects in the scene. Lightmaps are overlaid on top of scene geometry to create the effect of lighting. More info
    See in Glossary .
  • You can exercise control over how Unity handles the Normals and Tangents in your Model with the Normals The direction perpendicular to the surface of a mesh, represented by a Vector. Unity uses normals to determine object orientation and apply shading. More info
    See in Glossary , Normals Mode, Tangents, or Smoothing Angle options.

Setting options for importing Rigs and Animation

If your file contains Animation data, you can follow the guidelines for setting up the Rig using the Rig tab and then extracting or defining Animation Clips Animation data that can be used for animated characters or simple animations. It is a simple “unit” piece of motion, such as (one specific instance of) “Idle”, “Walk” or “Run”. More info
See in Glossary using the Animation tab. The workflow differs between Humanoid and Generic (non-Humanoid) animation types because Unity needs the Humanoid’s bone structure to be very specific, but only needs to know which bone is the root node A transform in an animation hierarchy that allows Unity to establish consistency between Animation clips for a generic model. It also enables Unity to properly blend between Animations that have not been authored “in place” (that is, where the whole Model moves its world position while animating). More info
See in Glossary for the Generic type:

Note: SpeedTree Models have neither a Rig nor an Animation tab.

Dealing with Materials and Textures

If your file contains materials and textures, you can define how you want to deal with them:

  1. Click the Materials tab in the Import Settings window.
  2. From the Material Creation Mode drop-down menu, choose how you want to import the Materials from the FBX file. Unless you chose None, several options appear in the Materials An asset that defines how a surface should be rendered. More info
    See in Glossary tab, including the Location option, whose value determines what the other options are.
  3. Choose the Use Embedded Materials option to keep the Materials inside the imported Asset.
  4. When you have finished setting the options, click the Apply button at the bottom of the Import Settings window to save them or click the Revert button to cancel.

Finding textures

Unity follows a specific search plan to automatically look for textures on import. First, the importer looks for a sub-folder called Textures within the same folder as the mesh The main graphics primitive of Unity. Meshes make up a large part of your 3D worlds. Unity supports triangulated or Quadrangulated polygon meshes. Nurbs, Nurms, Subdiv surfaces must be converted to polygons. More info
See in Glossary , or in any parent folder. If this fails, Unity performs an exhaustive search of all textures in the project. Although slightly slower, the main disadvantage of the exhaustive search is that there could be two or more textures in the project with the same name. In this case, it is not guaranteed that Unity can find the right one.

Place your textures in a Textures folder at or above the asset’s level

(A) Possible places to find Textures

(B) Mesh being imported

Normal maps

If you have a character with a normal map A type of Bump Map texture that allows you to add surface detail such as bumps, grooves, and scratches to a model which catch the light as if they are represented by real geometry.
See in Glossary that was generated from a high-polygon version of the Model, you should import the game-quality version with a Smoothing Angle of 180 degrees. This prevents odd-looking seams in lighting due to tangent splitting. If the seams are still present with these settings, choose Calculate Legacy With Split Tangents from the Tangents drop-down menu. If you are converting a greyscale image into a normal map, you don’t need to worry about this.

Как мне импортировать модели из моего 3D редактора?

Для импорта 3D модели в Unity вы должны перетащить файл модели в окно проекта.

В инспекторе > вкладка Model Unity поддерживает импорт моделей из всех популярных 3D редакторов.

Особенности импорта из разных 3D пакетов смотрите на следующих страницах:

Текстуры

  • Храните текстуры в папке под названием Textures рядом с экспортируемым мешем в вашем проекте Unity. Это позволит Unity найти текстуру и автоматически подключить её к созданному материалу. Для получения дополнительной информации, обратитесь к разделу Текстуры.

3D форматы

Импортирование мешей в Unity может быть выполнено с помощью двух основных типов файлов:

  1. Экспортированные 3D форматы файлов, такие как .FBX или .OBJ
  2. Собственные файлы 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 импортера, когда модель выделена. Это влияет на меш, его нормали и импортированные материалы. Настройки применяются для каждого ассета на диске, поэтому, если вам нужен ассет с другими настройками, создайте (и соответственно переименуйте) копию файла.

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

Импорт модели

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

Примечание. Основная поддержка Unity для файлов моделей файла, содержащего 3D-данные, которые могут включают определения для мешей, костей, анимации, материалов и текстур. Подробнее
См. в Словарь — это формат FBX. Однако вы можете сохранить свои 3D-файлы из большинства распространенных программ для 3D-моделирования в их собственном формате (например, .max, .blend, .mb, .ma). Когда Unity находит эти типы файлов в папке Assets , она вызывает подключаемый модуль Набор кода, созданного вне Unity, который создает функциональность в Unity. В Unity можно использовать два типа подключаемых модулей: управляемые подключаемые модули (управляемые сборки .NET, созданные с помощью таких инструментов, как Visual Studio) и собственные подключаемые модули (библиотеки собственного кода для конкретной платформы). Подробнее
См. в Словарь экспорта FBX программы для 3D-моделирования и импортирует файл. Программное обеспечение для 3D-моделирования должно быть установлено на том же компьютере, что и Unity, поэтому в большинстве случаев рекомендуется напрямую экспортировать в формате FBX из вашего приложения в папку Assets .

Читать:
Как поставить курсор в нескольких местах visual studio code

Доступ к окну настроек импорта

Независимо от того, какие данные вы хотите извлечь из файла модели, вы всегда начинаете с одного и того же:

Откройте Проект В Unity вы используете проект для проектирования и разработки игры. В проекте хранятся все файлы, связанные с игрой, такие как ресурсы и файлы сцен. Подробнее
См. в окне Словарь и Инспектор Окно Unity, в котором отображается информация о текущем выбранном игровом объекте, активе или настройках проекта, что позволяет просматривать и редактировать значения. Подробнее
Смотрите в Словарь , чтобы видеть оба сразу.

Выберите Модель Трехмерное представление модели объекта, например персонажа, здания или предмета мебели. . Подробнее
См. файл Словарь , который вы хотите импортировать из Актив Любой носитель или данные, которые можно использовать в вашей игре или проекте. Ресурс может быть получен из файла, созданного вне Unity, например, из 3D-модели, аудиофайла или изображения. Вы также можете создавать некоторые типы ресурсов в Unity, например контроллер аниматора, аудиомикшер или текстуру рендеринга. Подробнее
См. в папке Словарь в окне Проект.

Откроется окно Настройки импорта в Инспекторе, где по умолчанию отображается вкладка Модель.

Настройка параметров импорта для конкретной модели и общих параметров

Параметры, доступные для моделей SpeedTree, сильно отличаются от других моделей. Например, на вкладке SpeedTree Model в основном представлены параметры для настройки переходов между LOD. Метод Уровень детализации (LOD) — это оптимизация, которая уменьшает количество треугольников, которые Unity должна отображать для GameObject, когда его расстояние от камеры увеличивается. Подробнее
Смотреть в Словарь .

Модели персонажей и анимированные модели предоставляют более разнообразные параметры на вкладке «Модель», что позволяет вам:

  • Используйте свойства Масштабный коэффициент и Преобразовать единицы, чтобы настроить интерпретацию единиц Unity. Например, в 3ds Max 1 единица соответствует 10 сантиметрам, а в Unity 1 единица соответствует 1 метру.
  • Использовать сжатие сетки, включить чтение/запись, оптимизировать сетку, сохранить квадраты, Формат индекса или свойства Объединить вершины для сокращения ресурсов и экономии памяти.
  • Вы можете включить параметр Импортировать BlendShapes, если файл модели получен из Maya, 3ds Max или любого другого приложения для 3D-моделирования, поддерживающего целевую анимацию преобразования.
  • Вы можете включить параметр Создать коллайдеры для геометрии среды.
  • Вы можете включить определенные настройки FBX, такие как Импорт видимости или Импорт камер и Импорт источников света.
  • Для файлов модели, содержащих только анимацию, можно включить параметр Сохранить иерархию, чтобы предотвратить несоответствие иерархии в скелете.
  • Вы можете установить параметры Поменять UVs и Создать UV-карты освещения, если используете Lightmap Предварительно визуализированная текстура, содержащая эффекты источников света на статических объектах сцены. Карты освещения накладываются поверх геометрии сцены для создания эффекта освещения. Подробнее
    См. в Словарь .
  • Вы можете управлять тем, как Unity обрабатывает нормали и касательные в вашей модели, с помощью Normals направления, перпендикулярного поверхности сетки, представленной вектором. Unity использует нормали для определения ориентации объекта и применения затенения. Подробнее
    См. в Словарь , Обычный режим, Касательные или Угол сглаживания.

Настройка параметров импорта ригов и анимации

Если ваш файл содержит данные анимации, вы можете следовать рекомендациям по настройке Rig с помощью вкладки Rig, а затем извлечь или определить Анимационные клипы Анимационные данные, которые можно использовать для анимированных персонажей или простых анимаций. Это простое «единичное» движение, такое как (один конкретный пример) «Простояние», «Ходьба» или «Бег». Подробнее
См. в Словарь , используя вкладка «Анимация». Рабочий процесс отличается для гуманоидного и универсального (не гуманоидного) типов анимации, потому что Unity требует, чтобы структура кости гуманоида была очень конкретной, но нужно только знать, какая кость является корневым узлом Преобразование в иерархии анимации, которое позволяет Unity установить согласованность между клипами анимации для универсальной модели. Это также позволяет Unity правильно смешивать анимации, которые не были созданы «на месте» (то есть когда вся Модель перемещает свое мировое положение во время анимации). Подробнее
Общий тип см. в Словарь :

Примечание. Модели SpeedTree не имеют ни вкладки Rig, ни вкладки Animation.

Работа с материалами и текстурами

Если ваш файл содержит материалы и текстуры, вы можете определить, как с ними работать:

  1. Перейдите на вкладку «Материалы» в окне Настройки импорта.
  2. В раскрывающемся меню Режим создания материалов выберите способ импорта материалов из файла FBX. Если вы не выбрали Нет, в активе Материалы отображается несколько параметров, определяющих, какой должна быть поверхность. предоставлено. Подробнее
    См. на вкладке Словарь , включая параметр Местоположение , значение которого определяет другие параметры.
  3. Выберите параметр Использовать встроенные материалы, чтобы сохранить материалы внутри импортированного объекта.
  4. После завершения настройки параметров нажмите кнопку Применить в нижней части окна Параметры импорта, чтобы сохранить их, или нажмите кнопку Вернуть. > для отмены.

Поиск текстур

Unity следует определенному плану поиска для автоматического поиска текстур при импорте. Сначала импортер ищет подпапку Textures в той же папке, что и mesh основной графический примитив Unity. Меши составляют большую часть ваших 3D-миров. Unity поддерживает триангулированные или четырехугольные полигональные сетки. Поверхности Nurbs, Nurms, Subdiv должны быть преобразованы в полигоны. Подробнее
См. в Словарь или в любой родительской папке. Если это не удается, Unity выполняет полный поиск всех текстур в проекте. Несмотря на то, что он немного медленнее, основным недостатком полного перебора является то, что в проекте может быть две или более текстур с одинаковыми именами. В этом случае не гарантируется, что Unity сможет найти нужный.

Поместите свои текстуры в папку «Текстуры» на уровне активов или выше.Поместите свои текстуры в папку «Текстуры» на уровне активов или выше.

(A) Возможные места, где можно найти текстуры

(B) Импорт сетки

Карты нормалей

Если у вашего персонажа есть карта нормалей Тип текстуры Bump Map, который позволяет добавлять детали поверхности, такие как неровности, бороздки и царапины модели, которые отражают свет, как если бы они были представлены реальной геометрией. Подробнее
См. Словарь , созданный на основе высокополигональной версии Модели, вам следует импортировать версию игрового качества с Углом сглаживания 180 градусов. Это предотвращает странные швы в освещении из-за тангенциального разделения. Если швы по-прежнему присутствуют с этими настройками, выберите Рассчитать предыдущие версии с разделенными касательными в раскрывающемся меню Касательные. Если вы конвертируете изображение в оттенках серого в карту нормалей, вам не нужно об этом беспокоиться.

ИМПОРТ 3D МОДЕЛИ В UNITY

В инспекторе свойств импортируемых 3D моделей есть три вкладки:

• Вкладка Model (Модель) содержит основные настройки импорта 3D модели.

• Вкладка Rig (Оснастка) содержит настройки типа анимации 3D

• Вкладка Animations (Анимация) содержит настройки для импорта одного или нескольких Animation Clip (Анимационный клип), записанных в файл 3D модели.

Файл 3D модели может содержать любую модель, будь то персонаж, здание или часть мебели. В окне Project (Проект) корневой импортированный объект представляется в виде Model Prefab (Префаб модели).

Если 3D модель содержит несколько подобъектов, то они отображаются как несколько Mesh, на которые ссылается главный Model Prefab.

Импорт 3D модели в Unity

Рис. 4.12. Импорт 3D модели в Unity

Когда 3D модель выделена в папке Assets, в окне инспектора в закладке Model показаны настройки импорта, которые влияют на саму модель, ее нормали и импортированные материалы (рис. 4.12). Настройки применяются для каждого Mesh в проекте, поэтому если вам необходим точно такой же Mesh, но с другими настройками, то необходимо создать копию файла и переименовать ее.

Основные настройки импорта 3D модели

Хотя чаще всего настроек по умолчанию оказывается достаточно, все же следует подробнее изучить список настроек для более точной настройки объекта. Они могут помочь определить, что требуется сделать с данным игровым объектом:

• Scale (Масштаб) — коэффициент масштабирования, используемый для компенсации разницы в единицах измерения между Unity и трехмерным редактором и меняющий масштаб всей 3D модели со всеми подчиненными ей объектами. По умолчанию значение 1.

Стоить отдельно отметить, что физический движок Unity отмасштабирован так, что 1 единица измерения эквивалентна

Поэтому для получения корректного физического поведения следует корректно отмасштабировать все 3D модели в трехмерном редакторе еще в процессе моделирования. Если же этого нельзя или не получается сделать, то масштаб может быть скорректирован здесь.

• Normal and Tangents (Нормали и Касательные) — используется при импорте 3D модели персонажа с назначенной на него картой нормалей, взятой с высокополигональной 3D модели.

В данном случае необходимо импортировать 3D модель и поставить значение 180 градусов в свойстве Smoothing angle (Угол сглаживания). При помощи этого свойства можно предотвратить появление странно выглядящих швов в местах сочленения 3D модели. Если же швы останутся даже после применения данных настроек, то следует активировать свойство Split tangents. Если карта нормалей представляет собой чёрно-белое изображение, то не возникнет никаких проблем.

• Import BlendShapes (Импорт форм смешивания) — включение поддержки 3D моделей идентичной топологии (т.е. с одинаковым количеством вершин и их нумерации), но с отличающейся формой, созданные в трехмерном редакторе Мауа.

Unity может импортировать Blend Shapes из таких форматов как *.FBX (импорт Blend Shapes и контроля над анимацией) и *.dae (только Blend Shapes). Blend Shapes в Unity поддерживают анимацию на вершинах, нормалях и касательных. На объект одновременно может воздействовать как его Skin, так и Blend Shapes. Все 3D модели, которые были импортированы с Blend Shapes будут использовать компонент Skinned Mesh Renderer. Не имеет значения, был ли к нему применён до этого модификатор Skin. Анимация Blend Shapes импортируется как часть обычной анимации — она анимирует веса точек Blend Shapes в компоненте Skinned Mesh Renderer.

Есть два способа импорта Blend Shapes с нормалями:

J Если установить режим импорта Normals в положение Calculate, тогда для объектов будет использоваться та же последовательность просчёта нормалей, что и для Blend Shapes.

J Экспортируйте информацию о группах сглаживания в исходный файл. Тогда при импорте Unity просчитает нормали из групп сглаживания как для 3D модели, так и для Blend Shapes.

Если для анимации требуются касательные для Blend Shapes, то следует выставить режим импорта Tangents в положение Calculate.

• Generate colliders (Сгенерировать коллайдер) — создает сетку коллизии, чтобы позволить 3D модели сталкиваться и взаимодействовать с другими объектами.

В Unity используются два основных типа коллайдеров: Mesh Colliders (Коллайдер объекта) и Primitive Colliders (Примитивный коллайдер).

Mesh Colliders — это компонент, который используется импортированным объектом и может быть применен для создания столкновений с окружением. При активации Generate Colliders, компонент Mesh Colliders автоматически добавится в сцену вместе с импортированной 3D моделью. Они будут рассматриваться как одно целое до тех пор, пока будут работать в контексте использования физических свойств.

При перемещении импортированного объекта по сцене (например, машины) нельзя использовать компонент Mesh Colliders. Вместо этого необходимо использовать Primitive Colliders. В этом случае требуется отключить опцию Generate Colliders.

• Material Naming и Material Search — автоматически настраивает материалы и определяет местоположение текстур.

Для каждого импортированного материала Unity применяет правила:

  • • Если импорт материалов отменен (т.е. если свойство Import Materials отключено), то будет назначен материал по умолчанию.
  • • Если же свойство включено, тогда произойдёт следующее:

J Unity будет использовать название для каждого материала, основываясь на значении параметра Material Naming.

J Unity попытается найти существующий материал с таким име нем. Область поиска для поиска материала задаётся при помощи параметра Material Search.

J Если Unity удастся найти существующий материал, тогда он будет использован в импортированной сцене, если же нет, тогда будет создан новый материал.

Похожие статьи