Эластичная система

Эластичная система

МРТК поставляется с системой эластичного моделирования, которая включает широкий спектр расширяемых и гибких подклассов, предлагая привязки для 4-мерных пружины, трехмерных и простых линейных систем.

В настоящее время следующие компоненты МРТК, поддерживающие Диспетчер эластичных баз данных, могут использовать функциональные возможности эластичных БД:

Диспетчер эластичных баз данных

Эластичные System2

Диспетчер эластичных баз данных обрабатывает переданные преобразования и передает их в систему эластичных БД.

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

  1. Вызов метода Initialize в начале манипуляции, обновление системы с текущим преобразованием узла.
  2. Запрос Апплихосттрансформ при каждом выполнении вычисления эластичных баз данных в обновленном целевом преобразовании.

Обратите внимание, что эластичные операции продолжат моделирование по окончании манипуляции (через цикл обновления диспетчера эластичных баз данных). Чтобы заблокировать поведение, для параметра Автоматическое обновление эластичных баз данных енаблиластиксупдате можно задать значение false.

По умолчанию компонент диспетчера эластичных баз данных, добавляемый к игровому объекту, не будет включать эластичные объекты для любого типа преобразований. Поле Manipulation types using elastic feedback должно быть включено для конкретных типов преобразования, чтобы создать конфигурацию эластичных баз данных и экстенты для выбранного типа.

Конфигурации эластичных БД

Как и в случае с конфигурациями элементов управления "границы", диспетчер эластичных баз данных поставляется с набором объектов конфигурации, которые могут храниться в виде объектов с поддержкой скриптов и совместно использоваться разными экземплярами или Prefabs. Конфигурации можно совместно использовать и связывать как отдельные файлы ресурсов с скриптами или вложенные сценарии в Prefabs. Дополнительные конфигурации также можно определить непосредственно в экземпляре, не связываясь с внешним или вложенным сценарным ресурсом.

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

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

  • Эластичное преобразование
  • Эластичное вращение
  • Эластичное масштабирование

Объект эластичной конфигурации

Конфигурация эластичных БД определяет свойства для системы дифференциальной гармонической осциллятори. Следующие свойства можно изменить, но уже поставляются с набором значений по умолчанию в МРТК:

  • Масса: масса смоделированного элемента осциллятор.
  • Хандк: постоянная пружина.
  • Ендк: пружинная константа конца крепления.
  • Снапк: пружинная константа точки привязки.
  • Перетащите: коэффициент перетаскивания или затухания, пропорциональный скорости.

Экстенты эластичных баз данных

Параметры экстентов эластичных БД зависят от типа манипуляции. Перевод и масштабирование представлены экстентами эластичных БД и вращения, которые представлены экстентом эластичныхбаз данных кватернион.

Экстент эластичных БД

Экстенты тома определяют трехмерное пространство, в котором можно перемещать гармонические осцилляторы.

Границы растяжения эластичных томов

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

Сетка оснастки эластичных томов

Экстент эластичных баз данных кватернион

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

Пример эластичного вращения

  • Точек прикрепления: Эйлера углы, к которым будет привязана система.
  • Репеатснаппоинтс: повторяет точки привязки. Существующие точки привязки будут выступать в качестве модуля, в котором фактические точки привязки сопоставляются с ближайшим целым числом, кратным каждой точке привязки.
  • Снапрадиус: дуга — угол, с которой точки привязки начинают заставлять пружину в Эйлера градусах.

Пример сцены эластичных баз данных

Примеры конфигураций эластичных баз данных можно найти в ElasticSystemExample сцене.

Пример сцены эластичных баз данных