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

Видео обзор по работе с плагином

0.3c

0.3b

0.2b

Описание

Общие положения

  1. Чтобы оконный визуальный элемент стал интерактивным, для него следует создать булевское пользовательское свойство с именем Active и установить значение в положение включено.
  2. Все интерактивные манипуляции над элементами проводятся средней кнопкой мыши.

2д слайдер

2д слайдер состоит из двух квадратных элементов и позволяет одному управляющему элементу передвигаться в границах другого фонового элемента. Передвижение выполняет средней кнопкой мыши. При этом положение управляющего элемента высчитывается в процентах и связывается с векторным свойством-ссылкой в элементе. Так у меня в сцене позиция Null объекта связана с 2д слайдером и я получаю обратную связь на x,y координаты.
Это очень удобно для создания визуальных элементов для рига. Например, таким образом можно сделать управление взглядом персонажа и т.п. Ведь позиция Null объекта, соединенного с 2д слайдером, может быть использована в Relation ограничителе.
Собрать такой слайдер можно как в ручную, так и с помощью вспомогательного скрипта HUDext_UI. В ручную потребуется создать пользовательские свойства MinX, MaxX, MinY, MaxY, в которых указать рамки возможного передвижения слайдера в абсолютных единицах.
Что касается результата работы 2д слайдера, то он связывается с первым векторным свойством-ссылкой, который найден в списке свойств визуального элемента слайдера.
Для 2д слайдера также работает двойной клик средней кнопки мыши, который позволяет поставить ключ в данный момент времени на связанном векторном свойстве.

текстовый элемент

Текстовый элемент, он же HUDTextElement имеет три возможных способа интерактивного использования:

  • изменение вещественного значения;
  • изменение булевского значения;
  • запуск скрипта.

Чтобы изменять значения, следует некоторое свойство другого объекта добавить в визуальным элемент как ссылка. В этом случае значение свойства-ссылки будет отображаться в визуальном элементе, а средней кнопкой мыши появится возможность его изменять.

Двойным кликом средней кнопкой мыши будет установлен ключ на присоединенное к элементу свойство.

Для вещественного значения при изменении значения можно использовать функциональные клавиши:

  • CTRL для уменьшения шага прокрутки значения свойства
  • SHIFT для увеличения шага прокрутки значения свойства

В случае со скриптом необходимо создать пользовательское текстовое свойство в визуальном элементе с именем ScriptExecute и со значением пути скрипта, который будет вызван, если на элемент нажать средней кнопкой мыши.

Переключение камер. ?меется возможность добавить текстовое свойство «Camera» и значением имени камеры в сцене. По нажатию кнопки с подобным свойством, будет выполнен поиск камеры в сцене с указанным именем. В случае успеха, данная камера станет текущей.

HUDext_UI

Скрипт очень удобен для создания и обновления 2д слайдера. Демонстрирую как это работает.

  1. Создаем два визуальных элемента Rect element
  2. Условимся какой из них будет слайдером и какой будет рабочим пространством. При этом элемент слайдера должен быть меньше и размещаться внутри элемента рабочего пространства.
  3. Запускаем скрипт и заполняем два поля: в первым указываем элемент слайдера, во второй — элемент рабочего пространства.
  4. Нажимаем кнопку Build/Update и скрипт настраивает за нас свойства и их значения
  5. Теперь достаточно в наш элемент слайдера закинуть ссылку на некоторое векторное свойство и можно пользоваться

Важный момент заключается в том, что при изменении размеров окна 2д слайдер сместится. Его следует обновить: с помощью скрипта, указав элементы и нажав кнопку Build/Update. Тогда будут пересчитаны значения лимитов для слайдера в абсолютных единицах.

Скачать

HUDext 0.3c — setup_hudext_03c

HUDext_UI script — HUDextUI

Поддерживается MotionBuilder 2013 (64bit) for Windows

Журнал разработки

10.10.2013 —

— add justification and alignment processing for mouse inside function
— add camera switcher for buttons
— some bug fixes for using several different huds in different cameras

— recompile for MoBU 2014 (64 bits)

21.09.2012 — добавлен 2д слайдер, свойство active и скрипт HUDext_UI.py

02.09.2012 — первая версия, поддерживаются вещественные и булевские свойства, а также вызов скрипта

6 thoughts on “HUDext

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *