К содержанию
fohbook/ TouchDesigner
уверенный

Свои компоненты и параметры

Customize Component: собственные параметры, страницы и правила, по которым блок становится переиспользуемым.

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

Как сделать

  1. Выделите кусок сети → RMBCollapse Selected. Появится Base COMP.
  2. RMB по компоненту → Customize Component.
  3. Добавьте страницу и параметры: имя, тип (Float, Int, Toggle, Menu, Pulse, String, File, OP), диапазон, значение по умолчанию.
  4. Внутри компонента ссылайтесь на них через parent().par.Имя.

Типы параметров и когда какой

Тип Для чего
Float / Int Числовые настройки
Toggle Включатель
Pulse Действие: сброс, перезапуск, «применить»
Menu Выбор из вариантов; список задаётся или строится скриптом
String Имена, тексты, шаблоны
File / Folder Пути; кнопка выбора появляется сама
OP Ссылка на другой оператор — так компонент получает вход
RGB / RGBA Цвет
XY / XYZ Векторы

Правила переиспользуемого компонента

  1. Никаких абсолютных путей внутри. Только parent(), me, относительные пути и параметры типа OP — Ссылки.
  2. Всё настраиваемое — параметром. Если внутрь приходится заходить, чтобы что-то поменять, компонент не готов.
  3. Один вход, один выход там, где это возможно: In/Out операторы делают компонент обычным узлом в цепочке.
  4. Разумные значения по умолчанию. Компонент должен работать сразу после создания.
  5. Методы вместо ковыряния внутриExtensions.
  6. Имя параметра — это API. Переименование сломает всех, кто им пользуется.

Внутренние ярлыки

На странице Common любого узла есть Internal OP Shortcut. Задайте settings на конфигурационном узле — и внутри компонента везде пишется iop.settings. Переименования и перестановки перестают ломать ссылки.

Панель управления

Container COMP с кнопками, слайдерами и полями — это тоже компонент. Элементы (Button, Slider, Field) отдают значения в Panel CHOP или дёргают Panel Execute. Так собирают операторский интерфейс, который потом показывают в перформ-окне рядом с картинкой.

Компонент — это то, что вы отдадите себе через год

Проверка простая: создайте компонент в пустом проекте, не заходя внутрь, и попробуйте им пользоваться. Если получилось — он готов. Если пришлось лезть внутрь — доделайте параметры.

Клон переписывает содержимое

Если компонент клонирован от мастера, правки внутри клона пропадут при синхронизации. Настройки клона живут в его параметрах, а не внутри — Флаги.

рядом по смыслу