Документация/Статьи/Обзор редактора моделей

From NeoAxis Engine Wiki

Jump to: navigation, search
Перейти на уровень выше
Mesh editor 01.jpg

Contents

Описание

Редактор моделей (Mesh Editor) входит в состав редактора ресурсов и позволяет:

  • просматривать *.mesh файлы
  • перемещать, поворачивать и масштабировать модели
  • просматривать и генерировать уровни детализации (LOD - Level of Detail) моделей
  • просматривать текстурные развертки (UV channels) и просчитывать касательные векторы (tangent vectors)
  • просматривать привязанный к модели скелет и анимацию

Настройки редактора

Для конфигурирования, редактора моделей нажмите Options в панели инструментов, или Tools -> Options в верхнем меню.

Окно настроек редактора моделей

Четыре параметра во вкладке General:

Параметр Описание
Background Color Позволяет задать цвет фона рабочего окна. Вы можете ввести значения цвета в формате RGBA (Красный, Зеленый, Синий, Прозрачность)(Каждый цвет в диапазоне 0-255) или воспользоваться инструментом для выбора цвета.

Примечание - Цвет фона виден в том случае, если не используется skybox.

Show Axes Значение True позволяет включить отображение координатных осей. Может пригодится для позиционирования объектов в пространстве.
Show Grid Значение True позволяет увидеть сетку. Размер одной клетки по умолчанию равен 1 метру, удобно использовать для масштабирования объектов.
Sky Box Используйте этот параметр, чтобы сменить skybox (небо), отображаемое на фоне редактора.

Редактирование параметров модели

Для того, чтобы войти в режим редактирования модели, нажмите правой кнопкой на .mesh файле в окне ресурсов (Resources) и выберите пункт Edit. Теперь вы можете редактировать параметры модели в окне свойств (Properties) - справа, перемещать, поворачивать в пространстве и масштабировать модель. После входа в режим редактирования - вокруг рабочего окна появится зеленая полоска, в случае, если вы внесли изменения в модель - она поменяет свой цвет на желтый.

Редактор моделей - начало редактирования.

Перемещение, поворот и масштабирование

Если вы собираетесь изменить расположение, угол поворота или размер модели, вы можете использовать встроенные утилиты редактора моделей.

Редактор моделей - позиционирование, поворот и масштабирование модели.

В окне свойств нажмите на кнопку Move, чтобы открыть диалог перемещения объекта (Mesh Move). Измените три параметра, соответствующие осям X, Y и Z, имейте в виду, что 1 юнит соответствует одному делению сетки. Нажмите OK для подтверждения изменений или Cancel для их отмены.

Редактор моделей - диалог перемещения объекта

Для поворота объекта на нужный угол - нажмите кнопку Rotate в окне свойств, откроется диалог поворота объекта (Mesh Rotate). Выбрав нужную ось, для поворота объекта - укажите значение угла в градусах. Кнопки -90 и +90 вычтут или прибавят к введенному углу соответствующее значение. Максимальное значение - 359.99 градусов.

Редактор моделей - диалог поворота объекта

Для масштабирования объекта - нажмите кнопку Scale в окне свойств. Вы увидите диалог масштабирования объекта (Mesh Scale), который позволяет указать длину, ширину и высоту модели. Значение 1 означает 100%, соответственно, если вы хотите уменьшить высоту вдвое - следует указать 0.5 в крайнем правом поле. Если, напротив, вы хотите увеличить высоту вдвое - укажите значение 2 в крайнем правом поле.

Редактор моделей - диалог масштабирования объекта

Любая из трансформаций (перемещение, поворот или масштабирование) может быть применена либо только к модели, либо к модели и связанному с ней скелету (в случае его присутствия). Просто отметьте галочку Apply to skeleton перед нажатием кнопки OK и трансформация применится так-же к скелету.

Присвоение материала

Чтобы присвоить материал редактируемой модели, разверните вкладку Submeshes в окне свойств (Properties) и найдите параметр MaterialName. Нажмите на кнопку Browse, обозначенную тремя точками. Откроется диалоговое окно выбора ресурса (Choose Resource).

Редактор моделей - присвоение материала.

Вы увидите список ресурсов, содержащий файлы с расширением .highMaterial. (Подробная информация о редактировании материалов - Обзор редактора материалов) Выберите нужный материал с помощью двойного клика или выделив его и нажав кнопку OK. Если для модели используется материал с картой нормалей (Normal Mapping), то редактор может сообщить, что требуется просчет касательных векторов (tangent vectors). Для просчета касательных векторов - нажмите кнопку Channels в окне свойств. Откроется окно Mesh Vertex Channels. Нажмите кнопку Generate в группе элементов Tangent vectors.

Редактор моделей - просчет касательных векторов.

Присвоение скелета

Вы можете присвоить модели скелет (или заменить уже присвоенный на другой). Для этого в окне свойств нужно нажать кнопку Browse, обозначенную тремя точками, возле параметра SkeletonName в свитке General. Вы увидите окно выбора ресурса, позволяющее выбрать файл с расширением .skeleton. Выберите нужный файл двойным кликом или выделите его и нажмите OK. Выбранный скелет будет привязан к модели.

Редактор моделей - присвоение скелета.

Чтобы увидеть скелет - отметьте галочку Show skeleton внизу окна свойств. Активировав отображение скелета вы увидите группу костей (Bones), наведя курсор на любую из них - вы увидите имя данной кости.

Редактор моделей - отображение скелета.

Следует учитывать, что, если скелет не соответствует модели (например скелет танка присвоен модели зомби), модель вероятно будет искажена во время анимации. Следует присваивать модели скелет, четко подогнанный к данной модели.

Для просмотра анимаций - выберите нужную анимацию в выпадающем списке Animations в окне свойств. Если данный объект не анимирован - вы увидите в списке единственный пункт ('None').

Настройка уровня детализации (LOD)

Уровень детализации (Level of Detail или LOD) - используется для повышения частоты кадров. Обычно, когда объект находится на некотором удалении от камеры - нет смысла прорисовывать его в полной детализации. Фактически, чем дальше объект от камеры, тем меньше можно прорисовывать деталей. В окне свойств можно выбрать для просмотра модели с различным уровнем детализации, содержащиеся в вашем файле, и увидеть сколько граней содержится в каждой из них. Переключение между уровнями детализации осуществляется с помощью выпадающего списка LODs в окне свойств. Для каждого уровня детализации можно указать расстояние до камеры, за пределами которого будет использован данный уровень детализации. Существует два способа настройки LOD:

  • Автоматический - редактор моделей сам сгенерирует упрощенные варианты модели,
  • Ручной - вы сами выбираете низкодетализированные модели из списка.

Автоматическая настройка LOD

Главный положительный момент автоматической генерации уровней детализации - экономия времени. Вам не потребуется вручную упрощать модель. Конечно, результатом будет менее точная копия вашей модели, т.к. вы не контролируете ее преобразование. Для автоматического генерирования уровней детализации нажмите кнопку Generate LODs в окне свойств (Properties). Вы увидите диалоговое окно Generate LODs.

Редактор моделей - генерирование уровней детализации.

Вы можете выбрать количество генерируемых уровней детализации, дистанцию (в метрах) от камеры и процент граней, убираемых на каждом уровне по отношению к предыдущему. Например, в вашей модели 882 грани (faces). Установив количество генерируемых уровней детализации в 3, расстояние в 20 и процент граней убираемых на каждой итерации в 40%, вы получите три дополнительные модели. Итак, у вас есть четыре уровня детализации одной модели, при отдалении от камеры на каждые 20 метров загружается более низкодетализированная модель. Ниже - пример, как они могут выглядеть:

Ручная настройка LOD

Если вы подготовили собственные модели низкой детализации, то вы можете использовать использовать их, вместо автоматической настройки (ManualLODs Collection Editor):

Mesh editor 16.jpg

Для того, чтобы воспользоваться редактором - нажмите кнопку Browse, обозначенную тремя точками, возле параметра ManualLODs в окне свойств. Нажмите кнопку Add (Добавить) для добавления новой модели. В свойствах каждой добавленной модели необходимо указать расстояние от камеры (параметр FromDepth) и выбрать соответствующую данной дистанции модель.

Mesh editor 17.jpg

Вы можете добавить любое количество моделей различной детализации. Используя стрелки Вниз/Вверх вы можете изменить порядок их следования в списке. Нажав кнопку Remove (Удалить) вы удалите модель из списка. Примечание: вы не можете использовать ту-же модель, для которой настраиваете уровни детализации в данном списке.

Слои текстурных координат (UV Channels)

В свитке UV Channels вы можете просмотреть слои с текстурными координатами вашей модели (или части модели (Submesh), если ваша модель состоит более, чем из одной частей).

Mesh editor 18.jpg

Слой UV Unwrap необходим для просчета статичного освещения (lightmaps). Больше информации о текстурной развертке (UV Unwrap) вы найдете здесь (Англ.): Terms.

Редактор моделей не позволяет вручную редактировать текстурную развертку (UV unwrap), но вы можете сгенерировать новую развертку, с помощью специальной, встроенной в редактор утилиты. На данный момент продолжается разработка и улучшение генератора текстурной развертки и результат, пока может оказаться ниже желаемого уровня. Как бы то ни было - его вполне можно использовать для тестов. Для генерации текстурной развертки - нажмите кнопку Channels в окне свойств (Properties) и в окне Mesh Vertex Channels нажмите кнопку Generate в группе элементов UV Unwrap. Лучшим решением будет использование программы 3d моделирования, например 3dsMax для создания текстурной развертки.

Mesh editor 19.jpg

Так-же в данном окне вы можете:

  • удалить слой (channel),
  • назначить использование слоя в качестве текстурной развертки (кнопка Mark/Unmark Channel),
  • генерировать или удалить (generate/delete) слой с описанием касательных векторов (tangent vectors channel),
  • уменьшить размер файла, за счет удаления повторяющихся вершин (кнопка Compress).

Сохранение изменений

После внесения изменений в вашу модель, вы можете нажать кнопку Save (Сохранить) на панели инструментов для сохранения изменений или воспользоваться сочетанием клавиш Ctrl+S. Если вы решили не сохранять произведенные изменения - нажмите Esc и выберите No в появившемся диалоговом окне. Нажав Yes вы сохраните изменения, нажав Cancel вы можете вернуться в редактор и продолжить работу.