Из одного мастер-кадра сцены рождаются макро-детали того же момента. Всё в кадре стоит, летает только камера — склейка читается как один непрерывный облёт остановленного времени.
Обрати внимание: палитра, свет, погода и костюм совпадают везде — это одна и та же секунда, снятая с четырёх точек.




Общий облёт → копыто с висящими каплями → рука на поводьях → взгляд назад. Голос Doc, музыка «Lone trombone dread» с дакингом.
В каждом мир стоит, движется только камера — и за счёт параллакса видно, что сцена объёмная.
Порядок решает: сначала перечисляется всё, что не движется, и только потом траектория камеры. Иначе модель первым делом оживляет воду и огонь.
FROZEN TIME / BULLET-TIME SHOT. Everything inside the scene is completely motionless, as if time has stopped dead: people do not move, do not breathe, do not blink; fabric and cloaks hang frozen mid-flutter; water, spray and droplets hang perfectly still in the air like glass sculptures; fire is frozen mid-flicker; smoke and dust particles hang motionless. NOTHING in the world animates. ONLY THE CAMERA MOVES. <траектория камеры для этого шота> Strong parallax between foreground, midground and background reveals that this is a real three-dimensional space. Smooth, slow, steady movement, no shake, no speed ramp, no zoom blur. Keep the exact painted style, palette, lighting and composition of the source image.
Вода, брызги и капли — отдельным пунктом. Огонь и дым — отдельным. Ткань — отдельным. Общее «всё замерло» модель понимает как «замерли люди», а стихии оживляет.
Драйвер ходит в бота через единственную Telegram-сессию. Пока параллельно шла твоя пачка по video-nextgen, sqlite-база была заблокирована и генерация просто не стартовала — семь попыток подряд отбились. Решил это тем, что animate.py теперь пропускает уже готовые клипы, и его можно гонять в цикле: он вклинивается в паузы между чужими кадрами и добирает остаток. Так и добрал.