К содержанию
fohbookбета/ TouchDesigner

CHOP: каналы и сэмплы

Каналы, сэмплы и частота — три числа, которыми описан любой CHOP. Дюжина узлов на каждый день, перевод диапазонов, шаблоны имён и сглаживание.

Ветка вашего пульта:
Быстрый выбор:

CHOP — таблица чисел во времени: каналы как именованные дорожки, сэмплы как значения в них. Всё, что в проекте меняется, проходит через CHOP.

Свойство Что значит Пример
Число каналов Сколько дорожек tx, ty, tz — три
Число сэмплов Длина 1 сэмпл — «значение сейчас», 600 при 60 в секунду — кривая на десять секунд
Sample Rate Сколько сэмплов в секунду 60 — по кадру, 44100 — звук

Один сэмпл — это текущее значение, им управляют параметрами. Тысячи сэмплов — кривая или звук. Средний клик по узлу покажет число каналов и длину вида 600i (i — индекс, то есть сэмпл), а сами числа видно, если подключить CHOP to DAT: каждая ячейка таблицы — сэмпл.

Каждый день

Оператор Зачем
Constant Задать числа руками; основа патча DMX и любого набора значений
LFO Колебание: синус, гаусс, треугольник, пила, меандр, импульс
Noise Шум во времени и по каналам
Pattern Форма вдоль сэмплов: синус, пила, ступени — для волн по группе
Math Арифметика: умножить, сложить, комбинировать каналы, перевести диапазон
Limit Ограничить, квантовать, привести к диапазону
Lag Инерция: отдельные времена на нарастание и спад, перелёт
Filter Сглаживание: гауссово окно, прямоугольное, One Euro для трекинга
Rename / Select Переименовать и выбрать каналы по шаблону
Merge Сложить наборы каналов вместе
Shuffle Переложить каналы в сэмплы и обратно
Trail История значений: график во времени
Speed / Timer Интегратор и таймер: время и события

Диапазоны и имена

Значения по договорённости лежат в 0…1 или −1…1, и перевод в нужный диапазон — едва ли не самая частая операция в TouchDesigner. Для этого у Math CHOP есть страница Range с парой From Range / To Range:

from range  0 … 1
to range    0 … 255      →  DMX
to range   -0.5 … 0.5    →  смещение относительно центра
to range    20 … 20000   →  частота

Каналы выбирают по имени, и Select CHOP вместе с большинством параметров понимает шаблоны:

chan*          все каналы, начинающиеся на chan
tx ty tz       перечисление
p[1-8]         диапазон в имени: p1 … p8
*_lows         все каналы, кончающиеся на _lows

Они же создают каналы: chan[1-3] в Channel Name у Noise или LFO даёт три канала сразу. На именах держится вся маршрутизация большого патча, особенно в свете.

Сглаживание

Сырое значение от звука, камеры или датчика дёргается, и между ним и картинкой почти всегда стоят Lag и Filter. У Lag два времени, первое на нарастание, второе на спад, — это примерно время, за которое выход проходит 90 % скачка; так делают свет, который быстро вспыхивает и медленно гаснет. Filter усредняет по окну и убирает дрожание, а его тип One Euro подстраивается под скорость: медленное движение сглаживает сильно, быстрое почти не задерживает. Подробно — Сглаживание.

Trail CHOP — осциллограф проекта

Повесьте Trail на любой сигнал и откройте вьюер: сразу видно, дёргается ли значение, упирается ли в потолок, в том ли оно диапазоне.

Экспорт

Включите у CHOP Viewer Active, перетащите канал из вьюера на параметр другого узла и выберите Export CHOP — значение начнёт приходить туда само. Каналы, названные путь_узла:параметр, экспортируются сотнями, если на странице Common поставить Export Method в Channel Name is Path:Parameter. По скорости экспорт и выражение равны, выбирают по удобству — Параметры.

При пропуске кадров данные в CHOP не теряются; как это устроено — в Времени.

Нашли в статье ошибку, устаревшее или непонятное место?

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