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

Падает или зависает

Упало. CrashAutoSave и безопасный режим, Backup, где лежит .dmp, как поймать исчезновение и зависание, и как строить проект, чтобы падение никто не заметил.

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

Падает TouchDesigner редко и обычно в неудобный момент — на правке или под нагрузкой. Но на этот случай в нём кое-что предусмотрено.

Почти при любом сбое он успевает записать CrashAutoSave.имя_проекта.toe рядом с проектом. Этот файл открывается в безопасном режиме: ничего не кукается, можно пройти по сети и убрать виноватое. File → Save, переоткрыть — и проект снова обычный. Безопасный режим включают и руками: любой .toe, переименованный в CrashAutoSave… (скажем, CrashAutoSave.show.12.toe), откроется так же — спасение для проекта, который падает на загрузке.

При каждом сохранении номер в имени растёт, а прошлая версия переносится в Backup — Файл проекта и версии. С медиа по относительным путям копию из Backup перед открытием поднимают в папку проекта. Автосохранения по таймеру нет, между сохранениями спасает только CrashAutoSave.

Причина Как выглядит
Внешняя библиотека Python Падение молча, часто на первом вызове
Чужие numpy или OpenCV Падения через время — Внешние модули и окружения
Кончилась видеопамять Чёрное, потом падение — Память видеокарты
Драйвер Под нагрузкой, «драйвер восстановлен»
Шейдер GLSL На компиляции или первом кадре
Битый медиафайл На открытии — Не читает файл
Чужой плагин, C++-оператор Сразу после создания узла
Камера, плата, MIDI На подключении или отключении

Поиск

Textport (Alt+T) — что напечаталось перед падением. Edit → Preferences → General → Show Startup Errors выводит при запуске окно с ошибками, а при желании и с предупреждениями. Отчёт на Windows — .dmp в папке проекта, на macOS — «Консоль», Crash Reports. Процесс просто исчезает — запускают TouchDesigner из WinDbg (Microsoft Store) и ждут, пока отладчик поймает сбой. Завис — в диспетчере задач правый щелчок по процессу, «Создать файл дампа памяти»; на macOS — Spindump из «Мониторинга системы». Дальше половинное деление флагом Cooking до минимального случая и проверка на свежей сборке — Сборки и обновления.

О повторяемом падении пишут в Derivative — support@derivative.ca или форум: минимальный .toe без внешних файлов (медиа можно запереть Lock), шаги и .dmp, архивом .zip.

Падение без последствий

Нейросети, чужие плагины и библиотеки запускают в Engine COMP с Reload on Crash — падает движок, шоу идёт. Watchdog поднимает упавший проект сам. Состояние лежит во внешнем файле, и после перезапуска шоу продолжается с того же места. Во время разработки — сохраняться часто.

Во время шоу не правят

Падает обычно на правке. Неизбежную правку делают в копии, проверяют и подменяют, а шоу крутят в TouchPlayer.

Копия на флешке

Последняя рабочая версия, лежащая отдельно, — самая дешёвая страховка в профессии.

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

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