Transform3 D
трансформация 3D-сцены
Transform3D принимает обязательный classic Fusion scene3d stream и добавляет отдельный слой Translation, Rotation, Pivot и Scale, не растрируя сцену и не меняя её data domain.
Scene/geometry data от Shape3D, Text3D, ImagePlane3D, Merge3D, импортированной модели или другого совместимого classic 3D tool.
Transform3D
Обзор
Что делает Transform3D
Transform3D не создаёт geometry и не обрабатывает 2D image. У него один обязательный оранжевый SceneInput, который принимает classic Fusion scene3d от Shape3D, Text3D, ImagePlane3D, Merge3D, импортированной модели или другого совместимого 3D-инструмента. Выход Scene остаётся scene3d.
Главная производственная роль ноды — отделить spatial animation от ноды, которая создаёт объект. Вместо того чтобы одновременно менять geometry-параметры и transform в Shape3D/Text3D, можно оставить источник стабильным, а движение вынести в отдельный Transform3D. Это заметно упрощает риги, диагностику и переиспользование веток.
Transform3D применяет дополнительную матрицу поверх уже существующих upstream transforms. Поэтому два Transform3D подряд — не дубликат: первый может отвечать за локальный поворот объекта, второй — за движение всей получившейся ветки как parent-like уровень.
Порядок нод имеет значение. Shape3D → Transform3D_A → Transform3D_B и Shape3D → Transform3D_B → Transform3D_A могут дать разный результат, потому что Translation, Rotation, Pivot и Scale не обязаны коммутировать. Для сложных ригов называйте каждый transform по его ответственности.
Translation X/Y/Z перемещает всю входящую scene branch в 3D-пространстве. Это настоящий spatial offset, а не 2D Center и не изменение камеры. Если Transform3D стоит после Merge3D, Translation двигает уже весь объединённый subtree.
Rotation Order определяет порядок Euler rotations: XYZ, XZY, YXZ, YZX, ZXY или ZYX. При вращении только по одной оси разница может быть незаметна, но при комбинации больших X/Y/Z углов order становится частью результата и анимации.
Pivot X/Y/Z задаёт точку, вокруг которой Rotation и Scale воздействуют на incoming scene. Pivot не является отдельной Translation объекта: перенос pivot меняет центр преобразования, поэтому offset pivot плюс Rotation создаёт orbit-like движение вместо простого self-spin вокруг исходного центра.
Scale по умолчанию связан через Lock X/Y/Z. При включённом lock один Scale изменяет все три оси равномерно. При отключении появляются раздельные X/Y/Z Scale, позволяя non-uniform deformation. Это transform scale всей ветки, а не размер исходного primitive.
Use Target переводит ориентацию в target-based режим. Blackmagic описывает его так: после включения появляются X/Y/Z Target Position, а объект автоматически поворачивается к этой точке; Rotation становится относительной к target-направлению. Translation при этом по-прежнему задаёт положение самой scene branch.
Target Position — координата наведения, а не второй SceneInput и не отдельный объект Flow. В production rig её можно связать с координатами другого 3D-элемента, чтобы свет, карточка, текст или иная ориентируемая ветка постоянно смотрели на движущуюся цель.
Invert Transform виден в текущем captured Resolve 21 Inspector. В Blackmagic Fusion tool reference он описан как инверсия position/rotation/scaling transformation. Практически это удобно для компенсационных ригов: одинаковая матрица и её inverse могут взаимно отменять движение при корректной иерархии.
Invert Transform не следует понимать как простое умножение X/Y/Z на −1. Для матричного transform inverse учитывает композицию translation, rotation, pivot и scale; особенно при нескольких осях и нестандартном pivot ручная смена знаков не эквивалентна инверсии.
Import Transform импортирует именно transform data, а не geometry. Current Blackmagic manual перечисляет LightWave Scene (.lws), Max Scene (.ase), Maya ASCII (.ma) и dotXSI (.xsi). Для импорта полноценной geometry/scene используется соответствующий 3D import workflow, а не эта кнопка.
Pick-кнопки Translation, Rotation и Pivot дают интерактивный путь к тем же пространственным задачам через Viewer. Blackmagic также документирует onscreen transform modes и шорткаты Q для translation, W для rotation и E для scale.
Viewer gizmo и Inspector должны описывать одну transform-задачу. Если Scale Lock X/Y/Z включён, попытка тянуть отдельную scale axis не должна рассматриваться как независимый non-uniform scale: сначала снимите lock и убедитесь, что появились раздельные оси.
Transform3D удобен для UV/texturing workflow: сначала geometry может пройти UV Map 3D или другие geometry processors в нейтральных координатах, а финальное размещение в сцене выполняется Transform3D downstream. Так texture coordinates меньше рискуют визуально 'плыть' из-за смешивания задач.
Transform3D также полезен после Merge3D, когда несколько объектов уже собраны в группу. Один downstream Transform3D становится group-level parent-like motion layer, не требуя вручную синхронизировать одинаковые ключи на каждом дочернем объекте.
Не путайте Transform3D с Merge3D Transform. Merge3D тоже способен трансформировать merged scene, но Transform3D даёт отдельный явно именованный слой ответственности, который проще переставлять, инстансить, временно отключать или инвертировать в техническом риге.
Не путайте Transform3D с 2D Transform. После Transform3D data всё ещё scene3d: здесь нет RGBA pixels, canvas size, 2D edge behavior или Effect Mask. Обычный 2D Glow/Merge/MediaOut становятся валидными только после Renderer3D.
Output Transform3D можно подавать в Merge3D, Renderer3D, another Transform3D, UV/geometry processors и другие classic Fusion 3D nodes, совместимые с scene3d. Тип кабеля не меняется от того, насколько сложной стала матрица transform.
Для диагностики разбирайте проблему по уровням: сначала topology/data type, затем Translation, затем Rotation Order и углы, затем Pivot, затем Scale, затем Target/Invert. Одновременная правка всех групп легко маскирует ошибку иерархии под проблему координат.
Практический baseline — neutral transform: Translation 0/0/0, Rotation 0/0/0, Pivot 0/0/0, uniform Scale 1, Use Target Off, Invert Transform Off. От него меняйте одну группу за раз и только после проверки результата добавляйте следующий иерархический слой.
Current bundled screenshot подтверждает Controls UI Transform3D в Resolve 21: Translation, Rotation, Pivot, Scale, Use Target, Invert Transform и Import Transform. Conditional Target Position и unlocked X/Y/Z Scale документированы Blackmagic и должны проверяться на target build при подготовке финальных live-evidence скриншотов.
Когда применять
Отделять анимацию положения от geometry source.
Строить parent-like иерархии из нескольких Transform3D.
Перемещать/вращать/масштабировать всю Merge3D-группу как один блок.
Создавать orbit motion через смещённый Pivot.
Наводить 3D-ветку на Target Position.
Компенсировать transform через Invert Transform.
Размещать импортированную geometry после UV/material processing.
Сохранять чистый и читаемый 3D Flow с отдельными слоями движения.
Transform3D в контексте
Скриншоты из статьи. Откройте изображение, чтобы рассмотреть его крупнее.
Пример для Transform3D.
Оригинальное изображение