Конвертация между семействами
TOP → CHOP, CHOP → TOP, SOP → CHOP и обратно: где данные переходят границу и сколько это стоит.
Каждый переход между семействами — это копирование данных, часто между видеокартой и процессором. Такие узлы — самые дорогие места в сети, и их надо знать в лицо.
Карта переходов
| Из | В | Оператор | Типичное применение |
|---|---|---|---|
| TOP | CHOP | TOP to CHOP | Пиксель-мэппинг, анализ картинки, цвет в число |
| CHOP | TOP | CHOP to TOP | Данные как текстура: позиции инстансов, LUT |
| SOP | CHOP | SOP to CHOP | Координаты точек геометрии в сигнал |
| CHOP | SOP | CHOP to SOP | Построить геометрию из сигнала |
| DAT | CHOP | DAT to CHOP | Таблица чисел становится каналами |
| CHOP | DAT | CHOP to DAT | Значения в текст: логи, отправка наружу |
| DAT | TOP | Text TOP | Текст как картинка |
| TOP | SOP/POP | Trace SOP / Trace POP | Контуры картинки как кривые |
TOP to CHOP — самый важный и самый опасный
Забирает пиксели из видеопамяти в процессор. Именно так видео превращается в уровни для светодиодов — Пиксель-мэппинг.
Стоимость прямо зависит от количества пикселей. Правило:
Если вам нужны 512 значений, поставьте перед TOP to CHOP ресайз до
нужного размера. Тянуть в процессор кадр 1920 × 1080, чтобы взять из него
512 чисел, — это десятки миллисекунд на пустом месте.
Параметры, на которые смотреть:
- Download Type —
Next FrameвместоImmediateдаёт задержку в один кадр, но не заставляет процессор ждать видеокарту. Для шоу почти всегда правильный выбор. - Crop — брать только нужную область.
- Image Layout — как пиксели раскладываются по каналам и сэмплам.
CHOP to TOP — обратная сторона
Превращает каналы в текстуру. Нужен там, где данные должны попасть на видеокарту массово:
- позиции, цвета и повороты для инстансинга;
- таблица подстановки цвета для
Lookup TOP; - любой массив чисел для GLSL.
Дешевле, чем обратный переход: загрузка в видеопамять быстрее выгрузки.
SOP to CHOP и обратно
SOP to CHOP даёт координаты точек геометрии как каналы. Так берут позиции
приборов из 3D-сцены и превращают в адреса для света —
Наведение по 3D-цели.
CHOP to SOP строит геометрию из каналов: аудиоволна как линия, траектория
как кривая.
DAT to CHOP
Таблица чисел становится каналами. Основной способ загрузить конфигурацию: патч приборов, координаты пикселей, список значений. Считается один раз при изменении таблицы — дёшево.
Правило проектирования
Держите данные в том семействе, где они нужны, и переходите границу один раз, в одном месте, на минимальном объёме. Сеть, где TOP уходит в CHOP, потом обратно в TOP, потом снова в CHOP, будет тормозить независимо от мощности машины — Оптимизация кука.