Веб: HTTP, WebSocket, браузер
Web Client DAT, Web Server DAT и Web Render TOP: обмен с сервисами, панель управления в браузере, страница как текстура.
TouchDesigner умеет говорить по HTTP в обе стороны и показывать веб-страницы как текстуру. Это открывает и внешние сервисы, и удалённое управление.
Операторы
| Оператор | Для чего |
|---|---|
| Web Client DAT | Запрос наружу: REST API, скачивание, вебхуки |
| Web Server DAT | Свой HTTP- и WebSocket-сервер внутри проекта |
| WebSocket DAT | Клиент WebSocket |
| Web Render TOP | Рендер веб-страницы в текстуру |
| JSON DAT | Разбор ответа в таблицу |
Запрос наружу
Web Client DAT работает асинхронно: запрос уходит, ответ приходит в
колбэк. Это важно — синхронный запрос заблокировал бы кадр.
def onConnect(webClientDAT, statusCode): return
def onResponse(webClientDAT, statusCode, headerDict, data):
import json
payload = json.loads(data)
op('table_out')[1, 'value'] = payload['temperature']
return
Применения: погода и время для инсталляции, данные с сервера площадки, вызов LLM и генеративных сервисов, отправка телеметрии.
Любой внешний запрос обязан иметь тайм-аут и поведение по умолчанию. Инсталляция, которая ждёт ответа сервера, чтобы показать картинку, — это инсталляция, которая однажды покажет пустой экран.
Свой сервер
Web Server DAT поднимает HTTP-сервер и WebSocket на указанном порту.
Что на этом делают:
- панель управления в браузере: телефон вместо VNC;
- приём вебхуков от сторонних систем;
- страница для зрителей: голосование, ввод текста, участие в инсталляции;
- API проекта для других машин.
def onHTTPRequest(webServerDAT, request, response):
response['statusCode'] = 200
response['data'] = op('state').text
return response
Web Render TOP
Рендерит веб-страницу в текстуру. Что это даёт:
- готовые библиотеки визуализации (графики, карты) без переписывания;
- сложную типографику и вёрстку, которую тяжело собрать в TOP;
- живые дашборды и внешние сервисы прямо в картинке.
В 2025-й версии добавились управление DPI и произвольные заголовки запроса — можно рендерить страницы, требующие авторизации.
Стоимость заметная: это встроенный браузер. Для статичного контента рендерите один раз и держите результат.
Web Server DAT, простая HTML-страница со слайдерами, WebSocket на приём —
и у оператора есть пульт без установки чего-либо. Работает лучше, чем
кажется, и не требует ни MIDI, ни OSC-приложений.