Render.ru

Eyeon Fusion Tips & Tricks

Григорий Чаленко

Куратор форума
Команда форума
Рейтинг
948
#1
Скрытые возможности, недокументированные особенности.

Немного сумбурные, но полезные путевые заметки по Digital Fusion на основе личного опыта.

Некоторые вещи могут показаться очевидными, но я вел их, начиная с того момента, когда впервые сел за ДФ. Они пригодятся тем, кто только осваивает пакет.

See also a similar collection here: Short Fusion Tips & Tricks.


СОДЕРЖАНИЕ:

Интерфейс, общие вопросы

Маски

Трансформации, Мердж, Трекинг

2Д-инструменты, частицы

Анимация, Скрипты, Таймлайн, Редактор сплайнов

Импорт изображений / рендеринг
 

Григорий Чаленко

Куратор форума
Команда форума
Рейтинг
948
#2
ИНТЕРФЕЙС, ОБЩИЕ ВОПРОСЫ

Для того, чтобы контекстные меню прорисовывались средствами операционной системы, нужно удалить Fusion:\Plugins\eyeon\ContextMenu.plugin
Это помогает в случае, если меню выводятся некорректно или не выводятся вообще в связи с проблемами видеокарты.

В полях ввода можно вписывать выражения.

Если в поле ввода ввести выражение, начинающееся с "=", будет автоматически создан Simple Expression.
Этот метод удобен тем, что в simple expression легко перенести текущее значение параметра (достаточно перед числом поставить "=").

Для большинства параметров можно установить значения превышающие отображаемый диапазон слайдеров. Например, Blend может быть больше 1 и меньше 0.

Можно через скрипт включать/выключать Motion Blur во всех/выбранных узлах

Можно отобразить иконки во флове для произвольно выбранных нодов

В Transport Controls (управление превью справа внизу) через контекстное меню можно задать диапазон воспроизведения или точку входа/выхода клипа

Caps Lock - отключение интерактивного рендера (Режим None)

Ctrl+K - отображает или скрывает интерактивные инструменты во вьюпорте.

Show Full Color Range масштабирует диапазон цветов выводимого изображения до максимально возможного (нормализует). Полезно для отображения Z-канала и просмотра деталей в областях со значениями цвета>1

Текущий кадр можно сохранить в любом формате через конт. меню в Display View. Проблемы только с DPX и Cineon: к ним при сохранении применяется конверсия Log>Lin

Можно перетащить любую картинку в Display View прямо из проводника, чтобы просмотреть ее.

Можно настроить LUT для каждого видового окна отдельно. В качестве LUT могут использоваться макросы, сохраненные в Fusion:\LUTs

Для того, чтобы избежать ступенчатости на слабоконтрастных градиентах, нужно перевести изображение в 32 bit float, затем RMB на Display view, General Options > Dither.

При наведении на узел во Flow отображается размер в пикселах, соотношение пиксела, цветность и локальный таймкод
При наведении на вход узла расшифровывается его предназначение

Скрипт Make Proxy позволяет автоматически создавать прокси для сиквенций.

Если вставлять ноды из буфера обмена не Ctrl+V, а через контекстное меню, они появляются в месте, где меню было вызвано.
Для того, чтобы создать новый инструмент в конкретном месте Flow, нужно перетащить его туда с панели инструментов
В версии 5.21 по умолчанию тулы вставляются в место, где был последний клик мышью.

Выделять соседние ноды во Flow можно, используя стрелки на клавиатуре.

PipeRouter можно использовать как концентратор, если некая нода, например лоадер, должна быть заменена на другую, при этом она разветвляется на множество веток, можно сразу свлед за ней поставить PipeRouter и подменить ее на другую. В этом случае не придется заново подключать новую ноду ко всем веткам.

Некоторые плагины, такие как Speedsix Monsters (в меню они разбиты на 20 бессмыссленных боксов), удобно вызывать через Bin.
Для этого достаточно в бине создать папку и перетянуть туда из Эксплорера файлы плагинов.
Каждый тул в бине имеет собственную иконку. Их можно сортировать по алфавиту.

Выбрать любой тул из алфавитного списка всех тулов можно через скрипт Add Tool

Для того, чтоб Фьюжн сохранял компрессированные композиции, нужно в файле Fusion:\Profiles\Default\Fusion.prefs найти параметр "SaveCompressedComps" и изменить его с "false" на "true".
Компрессия сжимает композиции приблизительно в 4 раза, но делает невозможной правку в текстовом редакторе всего кроме заголовка.

Кое-что об оптимизации композиций.
Инструменты, делающие блюр, нужно размещать после инструментов, делающих трансформации, чтоб скрыть возникающие при трансформах артефакты.
В то же время, блюры и дефокусы нужно ставить после инструментов цветокоррекции, чтобы правильно соотносились алгоритмы работы с цветом и пространственные, не появлялось бандинга.
Инструменты, понижающие разрешение (Crop, Letterbox, Resize и т.д.) нужно ставить как можно раньше, чтоб работать уже с легкой картинкой, но после инструментов трансформации, кеинга, моушнблюра, масок и др. инструментов, для которых важны детали изображения, чтобы сохранить максимальное качество.
TimeSpeed, TimeStretcher, Average по возможности нужно ставить перед другими инструментами для ускорения рендеринга.
Шумоподавление, блюры с малым радиусом (в пределах размера зерна/шума), Average с небольшим кол-вом кадров нужно ставить перед кеером. Блюры с большим радиусом, как правило, лучше ставить после.

Simple Expressions могут ощутимо замедлять рендеринг. Если они используются в макросах и имеют ссылки на другие инструменты, возможны, так же, проблемы с инстансированием ноды макроса. Иногда использование дополнительных нод или даже CustomTool во избежание Simple Expressions может сделать макрос быстрее. Иногда - с точностью до наоборот: перенос вычислений из полей CustomTool в Simple Expressions оптимизирует просчет.

Как ни печально, но CustomTool ощутимо медленнее при выполнении операций с цветом по сравнению с другими инструментами. Цепочка из нескольких BrightnessContrast будет рендериться быстрее, чем единственный CustomTool с длинным выражением. Однако, при работе с ограниченной глубиной цвета (8 или 16 бит), CustomTool сохраняет большую точность и позволяет избежать клиппинга, поскольку он обрабатывает значения цвета в 32-битном режиме, независимо от глубины цвета исходника.

По возможности, нужно использовать Multi-box или Barlett алгоритмы вместо Gaussian в инструментах Blur, Glow, в масках и т.д. Во-первых, они работают в полтора и два раза быстрее соответственно, во-вторых, не генерируют отрицательных значений цвета в режиме float point.

Все параметры результирующего изображения, такие как глубина цвета, разрешение, аспект пиксела, поля, метаданные, берутся от изображения, заведенного в желтый вход инструментов (Background Input). Это справедливо для всех инструментов кроме Dissolve. Другими словами, параметры изображения, получаемого в композиции, берутся из самого нижнего "слоя", поверх которого мерджатся все остальные картинки.

Операции с изображением, выполняемые по референс-изображению (цветокоррекция, подбор зерна), удобнее делать с каждым каналом отдельно.

Зум при помощи колеса мыши можно делать без Ctrl, введя в консоли:
comp:SetPrefs("Comp.Views.Left.CtrlWheelZoom", false)
comp:SetPrefs("Comp.Views.Right.CtrlWheelZoom", false)
После этого во вьюпорте: RMB>Settings>Save Defaults
Либо в файле Fusion:\Profiles\Default\Fusion.prefs
исправить
CtrlWheelZoom = true
на
CtrlWheelZoom = false

Smooth Resize не работает, если цвет изображения - в режиме float point (с integer все в порядке) - устранено в Fusion 5.3

Lightness вычисляется как L=(min(R,G,B)+max(R,G,B))/2
Используется в цветовом пространстве HLS

Luminance вычисляется по следующей формуле: Y=R*0.299+G*0.587+B*0.114
В соответствии со средней чувствительностью глаза к красному, зеленому и синему цветам.
При одинаковых числовых значениях в каналах зеленый воспринимается самым ярким, синий - самым тусклым.
Используется в цветовом пространстве YUV

Luma вычисляется так же, как Luminance, но с учетом гамма-компенсации: Y'=R^0.45*0.299+G^0.45*0.587+B^0.45*0.114
Эта формула справедлива для истинно-линейных изображений.
Если luma вычисляется для sRGB-картинки, возведение в степень не нужно, т.к. картинка уже содержит гамма-компенсацию: Y'=R'*0.299+G'*0.587+B'*0.114

Luminance-Luma-Lightness.comp - композиция, показывающая разницу между Lightness и Luminance, а так же, различные способы получения того и другого.

Во фьюжене правильный перевод в ЧБ по формуле Y=R*0.299+G*0.587+B*0.114 делает инструмент Color Space

Чтобы назначить горячие клавиши на скрипт, нужно поместить этот скрипт в папку Fusion:\Scripts\HotkeyScripts, затем выбрать пункт меню File>Script>Hotkey Manager и в нужной категории создать сочетание клавиш, выбрать скрипт из списка, нажать Set Action.

Если у вас одновременно установлено несколько версий Фьюжн, можно сделать, чтобы все версии использовали одинаковые настройки и набор плагинов, прописав в File>Preferences>Path Maps одинаковые для всех версий папки.

Для того, чтобы Фьюжн открывал композицию при клике на файле в Проводнике, нужно в типе файлов Comp прописать "%1.%2" вместо "%1". Тогда программе из проводника будет передаваться имя композиции с расширением.

Если композицию, созданную в 5.1 открыть и сохранить в 5.0х, на приматах появляются точки! Портится именно композиция.

Если нужно наложить отражение переднепланового объекта на поверхность, уже отражающую заднеплановые объекты, нужно предварительно наложить отражение на BG цвета отражающей поверхности в режиме screen и полученный результат сложить с отражающей поверхностью в режиме normal.

"Пасхальные яйца":

Нажмите комбинацию Ctrl+Shift+H

После того, как насладитесь многофункциональностью Фьюжена, нажмите Ctrl+Shift+B, чтоб узнать, кто, на самом деле, правит бал

Оцените сальный юмор ребят из Eyeon, переключившись в консоль после запуска Fusion

Для того, чтоб получить ответ на любой волнующий вас вопрос,
Перейдите в консоль, введите в командной строке:
8ball: .................?
подставив вместо многоточия свой вопрос по-английски.

Комбинация Ctrl+Shift+/ откроет имена команды создателей замечательной софтины.
 

Григорий Чаленко

Куратор форума
Команда форума
Рейтинг
948
#3
МАСКИ

Маски во фьюжене изначально анимированы (чтобы не образовывалось ключевых кадров, нужно удалить анимационный сплайн).

Растровую маску можно использовать в качестве люмакеера

В Glow есть специальная маска Glow Mask, позволяющая указывать область свечения, при этом сам эффект распространяется и за пределами маски

В крокодавочных Beams есть специальная Beams Mask, позволяющая указывать область свечения, при этом сам эффект распространяется и за пределами маски
В инструментах искажений есть Warp Mask, у которой в области feather трансформации уменьшают силу

Garbage Mask - маска на кеере или на Matte Control, позволяющая задавать полностью прозрачные области

В ReelSmart Motion Blur есть спец. маска RS Motion Blur Mask, разделяющая области изображения с разным направлением движения или отделяющая статичный фон от переднеплановых объектов. Настройка блюра отмаскированных таким образом областей находится во вкладке Top Layer.

Effect Mask имеет бОльший приоритет, нежели Garbage Mask, Glow Mask, Warp Mask и т.д.

Если включен режим автопрокси, каждый раз, когда дергаешь управляющий элемент, разрешение картинки понижается, потом опять повышается. Из-за этого картинка "сползает" вправо-вниз.

Применять маски к изображению для создания прозрачных областей можно через Brightness/Contrast с Gain=0, воздействующий на альфу, или через Matte Control в режиме Matte Combine>Clear. Можно так же в Matte Control сделать Garbage Matte.

Поскольку Cineon Log модифицирует уровень черного, применять маску прозрачности или умножать на альфу нужно всегда после конверсии log>lin. Иначе области, которые должны быть прозрачными, будут высветлять или затемнять фон.

Если у полигональной маски сложной формы одни сегменты перекрывают другие (контуры пересекаются), можно выставить Fill Method>Non-zero Winding вместо Alternate, чтобы избежать дырок в местах наложения.

При наведении курсора на контур маски в Display View, отображается ее название (полезно при большом количестве масок).

Во вход ноды, предназначенный для масок, можно воткнуть любое изображение. В этом случае изображение будет работать как растровая маска.
Чтобы изменить настройки такой маски, нужно войти во вкладку со значком радиации в настройках тула, к которому она применена.
В такой маске недоступны параметры: Level, Soft Edge, Center

Начиная с версии 5.1 можно к маскам напрямую применять любые инструменты, включая трансформации, трекинг, дисторсию, цветокоррекцию. Для этого нужно подключить выход маски ко входу нужного инструмента и использовать результат как растровую маску.

Рисование сплайнового прямоугольника: нарисовать четырехугольник, затем, попарно выделяя точки, ввести одинаковые координаты по одной из осей (E). Редактировать габариты через Shape Box или удерживая Alt

Нарисовать эллипс или прямоугольник кривой безье можно, создав Polygon Mask и выбрав меню Polyline>Create>Ellipse... (Create Rectangle...)

В растровой маске параметр Soft Edge срабатывает после Low-High, т.е. Low-High влияет только на контраст входящего изображения.

Работать с мягкостью масок, менять тип затухания прозрачности или делать маски контурными можно с помощью инструмента ColorCurves

Применение маски во Фьюжене равносильно умножению всех каналов на ее цвет (уровень).
Если в 3Д отрендерен отдельно цвет, отдельно альфа-канал и изображение не premultiplied, альфу можно присоединить как растровую маску.
Если же изображение уже premultiplied, альфу использовать как маску нельзя, т.к. появятся черные контуры. Вместо этого нужно воспользоваться MatteControl или ChannelBooleans

Применить к маске перемещение вращение и масштабирование из трекера можно, присоединив соответствующие параметры маски через крнтекстное меню RMB>Connect To:
Center -> Tracker Unsteady Position
Scale -> Tracker Unsteady Scale
Z Rotation -> Tracker Unsteady Angle

Если необходимо открыть контур маски в определенном сегменте, можно сохранить .settings маски (RMB>Settings>Save As), открыть сохраненный файл в текстовом редакторе и поменять порядок вершин внутри тэга Points. Затем Drag'n'drop .setting во Flow, Shift+O.
Изменение порядка вершин может, так же, пригодиться для корректирования анимации маски, если вдруг получилось, что вершины ползут по контуру, переходя в не свою позицию.

Наиболее важные горячие клавиши:

Alt или Shift - переносить точки сплайнов по одной из осей (Constrain X/Y)

Ctrl - редактировать одну касательную безье независимо от второй

Shift - изменение длины обеих касательных безье с сохранением угла

Shift+S - сделать сегменты маски сглаженными

Shift+L - сделать сегменты маски линейными

Shift+A - выделить все точки маски

T - поворот выбранных точек относительно позиции курсора

S - масштабирование выбранных точек относительно позиции курсора

X - масштабирование выбранных точек по горизонтали относительно позиции курсора

Y - масштабирование выбранных точек по вертикали относительно позиции курсора

M - двигать точку привязки (center) маски независимо от контура

O - регулировать мягкость двухконтурной маски в выделенных вершинах или масштабировать каждую вершину относительно ее собственной нормали

W - масштабировать касательные выбранных точек безье-полигона или вес точек B-Spline

См. так же Принципы ротоскопинга
 

Григорий Чаленко

Куратор форума
Команда форума
Рейтинг
948
#4
ТРАНСФОРМАЦИИ, МЕРДЖ, ТРЕКИНГ

Инструмент трансформ работает как обычный эффект: он смещает не координаты изображения, а цвет пикселей. При этом можно использовать маски и параметр бленд.

Любые фильтры, стоящие после нодов трансформации, делают flatten transform

Если в мердж поставить Flatten Transform, верхний слой будет обрезаться по границам нижнего
Если Flatten Transform ставить в Transform, изображение будет обрезаться по границам исходного

Скрипт Flatten or Collapse All Transformations значительно (в несколько раз) ускоряет рендеринг при использовании большого количества Merge и Transform.

Контекстное меню нода>Script>Transform destabilize позволяет скопировать в трансформ данные из трекера

Для того, чтобы приравнять ширину кадра верхнего слоя к ширине кадра нижнего слоя в Merge, введите в поле Size: =Background.Width / Foreground.Width
'=' автоматически создаст Simple Expression

Аспект пиксела не учитывается при складывании изображений нодами ChannelBooleans и CustomTool

Значения X и Y в параметрах Pixel Aspect фактически означают масштабирование по соответствующим осям.
Таким образом, поскольку в PAL пиксел растягивается и сжимается по горизонтали, Pixel Aspect должен быть X=1.06(6) Y=1

Если в ноде Merge нижележащий слой заканчивается раньше вышележащего, рендеринг прекращается.

Режим наложения Add достигается установкой параметра Alpha Gain = 0 при Subtractive/Additive = 1.0
То же самое можно получить, установив Burn In = 1
Второй вариант - через Channel Booleans. В списке Operation нужно выбрать Add.

В режиме Additive цвет в областях с черной альфой добавляется к цвету нижележащего слоя в чистом виде.

Для того, чтобы перевести 3Д-координаты в 2Д (узнать координаты проекции 3Д-обхекта), можно импортировать 3Д-камеру как Camera3D и 3Д-координаты движущейся точки как Locator3D.
Затем вонзить выход Camera3D во вход Locator3D.Data3D.
2Д-координаты будут доступны в виде параметра Locator3D>Position в списке Connect To.

Вычислить промежуточную позицию между двумя точками можно, создав выражения Point Out в модификаторе Expression: (p2x-p1x)*n1+p1x и (p2y-p1y)*n1+p1y
Где p1 и p2 - данные точки, а n1 - коэффициент, задающий позицию на отрезке между двумя точками.
Полезно для притречивания позиции маски к двум путям или для плавного перехода от одного пути к другому.

Вычислить угол прямой, проведенной через две точки, можно, создав выражение Number Out в модификаторе Expression: atan((p1y-p2y)/(p1x-p2x))
Где p1 и p2 - данные точки.
Полезно для притречивания угла маски к двум путям.

Математика, используемая в Merge:

Normal
Subtractive/Additive - микс между формулами BG*(1-FGa*AG*(1-BI))+FG*FGa*AG и BG*(1-FGa*AG*(1-BI))+FG
где
BG - цвет нижнего слоя
BGa - альфа нижнего слоя
FG - цвет верхнего слоя
FGa - альфа верхнего слоя
AG - Alpha Gain
BI - Burn In

Если Alpha Gain=0 или Burn in=1, получаем чистое сложение (режим Add).

Multiply BG*FG
Используется для наложения теней, карты освещенности и применения масок.
Там, где маска = 1, изображение остаётся нетронутым.
Там, где маска = 0, изображение становится черным.

Screen FG+BG-FG*BG или 1-(1-BG)*(1-FG)
По сути, является инвертированным Multiply
Используется для наложения отражения в стекле на прозрачность стекла.
Результат никогда не бывает больше 1.

Наглядный пример работы этих и других режимов наложения и расшифровка используемых в них математических формул: Apply_Modes.comp

Трекинг, стабилизация:

Для того, чтобы трекер корректно отображал enlarged pattern, нужно отобразить трекер во вьюпорте, т.к. иначе трекер не обрабатывает картинку, как любой инструмент, не участвующий в ее формировании на Display View.

Несмотря на то, что синий канал может быть наиболее контрастным, трекинг лучше делать по зеленому каналу, т.к. в нем, как правило, наибольшее соотношение сигнал/шум. В синем же контраст может создаваться сильным шумом-зерном.

Трекер цепляется в первую очередь за светлые области паттерна. Это нужно учитывать, если паттерн изменяется.

Выбирать паттерн для трекинга нужно такой, чтобы в нем был хороший контраст по цвету, чтобы детали, присутствующие в паттерне, однозначно задавали и вертикальную и горизонтальную его позицию на изображении (например, нельзя в качестве паттерна выбрать врагмент вертикальных линий, проходящих через изображение - в этом случае трекер будет ползать вверх-вниз).

Чем более размыто изображение и чем больше на нем зерна/шума, тем бОльшего размера нужен паттерн.

Центр паттерна лучше устанавливать на четко определенную деталь-точку в изображении. Это поможет отследить правильность трекинга и, если нужно, поправить трекер вручную.

Область поиска должна быть немного больше максимального расстояния, на которое перемещается паттерн между соседними кадрами.

Лучших результатов можно добиться, если специально для трекера увеличить контраст картинки. Например, перед трекером можно поставить Brightness/Contrast и, используя Low-High сделать, чтобы область паттерна имела максимально возможный контраст в используемом для трекинга канале. При увеличении контраста нужно следить, чтобы не пропадали детали в темных и светлых областях паттерна (чтобы не было клиппинга).

Чем больше точек оттречено, тем более точной будет стабилизация. Полезно даже несколько раз оттречить одну точку, используя немного отличающийся паттерн.

Для того, чтобы в качестве базового кадра (reference frame) в режиме Match Move, FG over BG трекер использовал не первый, не последний, а произвольно выбранный кадр оттреченной секвенции, нужно:
1. Перед картинкой, вводимой в FG, поставить Transform
2. Применить к нему скрипт Destabilize Transform
3. Перейти в таймлайне на кадр, выбранный базовым, удалить появившуюся анимацию, оставив текущие значения параметров,
4. Отключить Invert Transform.

Этот трансформ будет в выбранном кадре трансформировать картинку на столько, на сколько и трекер, но с точностью до наоборот, т.е. компенсировать трекер так, чтобы картинка осталась без изменений.

С режимом BG Only (стабилизацией) аналогично, но Трансформ может стоять как до, так и после трекера и чекбокс Invert Transform отключать не нужно.

В режимах FG over BG и BG only трансформации применяются в пространстве изображения, подключенного ко входу BG. В режимах FG only и BG over FG - в пространстве FG-изобраения.
 

Григорий Чаленко

Куратор форума
Команда форума
Рейтинг
948
#5
[size=large]2Д-ИНСТРУМЕНТЫ, ЧАСТИЦЫ[/size]

Карту UV для инструмента Texture нужно отсчитывать в 32 bit и с максимальным антиальясингом.

Освещение и отражения/преломления 3Д-объекта (сцены) можно сымитировать через инструмент Shader, в один вход нужно воткнуть картинку с объектом, отсчитанным с плоским диффузным цветом (без бликов и теней) и внедренной через Channel Booleans картой нормалей (RGB>XYZ). Во второй вход - либо фоновую картинку, либо цилиндрическую карту окружения.

Если при выделенном Crop на изображении выбрать прямоугольную область, будут заданы соответствующие параметры кадрирования (прямоугольная область может быть и меньше, и больше изображения, может так же частично выходить за пределы картинки).

Если в зеленый вход ChannelBooleans ничего не подключено, то вместо каналов FG подставляются каналы BG

Для градиента есть модификатор From Image, позволяющий создавать произвольное количество маркеров с цветами, взятыми из изображения

Все настройки любого инструмента можно сохранить в файл или сохранить как настройки по умолчанию

С помощью Lighting можно рисовать трещины и ветви деревьев.
Пожалуй, лучшие молнии получаются при помощи Sapphire>Zap

В Time Speed Delay срабатывает после Speed - смещение задается для видео с измененной скоростью.

Для корректной обработки Re:Vision Twixtor'ом клип должен начинаться с начала таймлайна (можно это делать за счет Hold First Frame)

Twixtor окрашивает черным области со значением цвета >1 в областях с черной альфой. Перед применением твикстора нужно вставлять MatteControl с MatteCombine = Solid

Для того, чтоб текстовый модификатор From File работал с русскими символами, текст должен быть в кодировке UTF8

Можно анимировать содержимое Text+

Если в шрифте в Text+ русские буквы подменяются на символы, можно набрать текст через таблицу символов

Некоторые инструменты ДФ являются упрощенными копиями других инструментов:
Soft Glow=Glow
Light Trim работает как Brightness*85

Для того, чтобы при редактировании формы Grid Warp не сбрасывались направления касательных Безье, нужно отключить режим
Auto Smooth Points
Точки могут иметь разную глубину Z

Контуры в изображении можно находить через Filter>Sobel или Laplacian. Для того, чтобы они были более плавными, нужно предварительно немного поблюрить изображение. Для того, чтобы сделать их потолще, можно применить затем Blur и сильно увеличить контраст за счет Gain или High в Brightness/Contrast.

Окраска в ровный цвет по альфа-каналу - Krokodove>Color или через CustomTool+Background, см. макрос ColorFill.setting

Цветокоррекцию, сделанную инструментом ColorCurves, можно инвертировать в редакторе Spline

Инвертировать цвет изображения можно не только через Krokodove>Invert, но и через ChannelBooleans или ColorSpace (операция Negative). Пример макроса. ColorSpace не работает с альфой.

Krokodove Canvas глючит (падает рендер, проблемы с аспектом картинки)

Набор Monsters при работе с 32-битной картинкой обрезают динамический диапазон до 1.

Если какие-либо инструменты не работают со значениями цвета больше 1, можно перед такими инструментами ставить Brightness/Contrast с Gain=x, где x<1, а после - Brightness/Contrast с Gain=1/x

Locator3D позволяет конвертировать 3Д-координаты объекта в координаты 2Д-проекции. К нему необходимо подключить камеру, относительно которой делается проекция и задать размеры кадра. Locator3D опубликует координаты 2Д-проекции, к которым можно будет подключить позицию любого 2Д-объекта.

[size=large]Частицы[/size]

Монстровские частицы, в отличие от фьюженовских, нельзя считать по сети и перед их рендерингом необходимо нажимать рестарт/преролл. При этом каждый раз они генерятся по-разному

Для того, чтобы внести некую самостоятельность в движение каждой частицы, можно последовательно подцеплять несколько однотипных сил с параметром Probability<1

Можно скопировать стиль частиц из одной ноды в другую (pEmitter, pImageEmitter, pSpawn, pChangeStyle), сохранив сеттингс из одной ноды, вычистив все кроме раздела Style в текстовом редакторе и загрузив полученный файл в другую ноду как сеттингс

Несмотря на значение параметра Sub-frame Calculation Accuracy в pRender, частицы рождаются не точно в определенном кадре, но и в межкадровых интервалах.
Например, если санимировать параметр Number так, чтобы он был равен 0, 10, 0 в кадрах 14, 15, 16 соответственно, некоторые частицы будут перемещаться с опережением.
По той же причине, позиция частиц будет меняться, если изменять настройки motion blur.
Наконец, частицы будут вести себя по-разному, если установить Global In в pRender = 14 и 15.

Если pRender установлен в 3D Output Mode, нужно к выходу pRender подключить Render3D, motion blur включить и в pRender'е, и в Render3D.
Если качество МБ в pRender установлено выше, чем в Render3D, окончательное кач-во будет, как в Render3D+1.
Если кач-во в pRender установлено ниже, такое качество и будет назначено.

В частицах при 8бит и 16 бит инт. если общее значение цвета частиц + минимальное значение Color Variance меньше 0, результирующий цвет зацикливается. Например, если общий цвет=0.5, а минимальный Variance=-0.7, вместо значения цвета -1.2 будет возвращено 0.8.

Kill particles that leave view действует и на частицы, которые не вошли в кадр

Для того, чтобы придать частицам больше хаотичности, избежать появления частиц с одинаковыми координатами, нужно санимировать pEmitter>Random Seed

Просчет частиц сильно замедляется, если накладывающиеся друг на друга частицы имеют одинаковые координаты по Z. Чтобы этого не происходило, нужно задавать некую глубину эмиттеру или устанавливать параметр Position Variance.

Для того, чтобы все частицы отличались друг от друга, можно прибегнуть к следующим шагам:
1. Установить Lifespan Variance, Rotation Z Variance, Color Variance, Color over Life, Size Variance, Size over Life, Blur Variance.
2. В Bitmap Style установить Animate=Particle Age или Birth Time, в качестве картинки для Style Bitmap подать секвенцию.
3. При Bitmap Style, Animate=Birth Time, сделать RMB на pEmitter>Style>Time Offset, Modify with>Shake; в Shake задать минимальную Softness, Minimum и Maximum - в соответствии с длиной спрайтовой секвенции. Задать pRender>Sub-frame Calculation Accuracy равным количеству частиц, испускаемых за один кадр.
4. Сделать instance эмиттера, присоединить к нему модифицированную секвенцию Bitmap Style, соединить с оригинальным эмиттером через pMerge

[size=large]Блюр[/size]

3D-Blur можно использовать в качестве неравномерного блюра по альфа-каналу, но для этого появился новый, более точный VariBlur.

Произвольно направленный directional blur можно получить с помощью ReelSmart Motion Blur, создав карту векторов.
В карте значения красного соответствуют скорости по горизонтали, а значения зеленого - по вертикали.
1-максимальная скорость в данном направлении, 0-максимальная скорость в противоположном, 0,5 - нулевая скорость.
В векторах, полученных из Softimage, 0 соответствует состоянию покоя. Для того, чтобы их можно было использовать с ReelSmart Motion Blur, нужно применить Brightness/Contrast с Brightness=0.5 и присоединить альфа-канал из Beauty Pass

Vector Blur из Fusion 5.2 не так реалистичен, как ReelSmart, но за счет меньшего фэйда он перекрывает фоновые объекты переднеплановыми. В результате, артефакты при обработке пересекающихся объектов практически отсутствуют.
Фьюженовский Vector Blur может использовать любые каналы для считывания скорости по X и Y и он предполагает, что 0 соответствует состоянию покоя, положительные значения цвета - движению по направлению координатной оси, отрицательные значения цвета - движению в обратном направлении.
Vector Blur может использовать Motion Vectors из Софтимаж без дополнительной обрабтки.

Эффект дефокуса можно частично воссоздать, применив Blur и затем Erode/Dilate

Для того, чтобы родной Defocus работал правильно, нужно перед его применением понижать гамму картинки до 0.45(45) а после - возвращать цвет в исходное состояние, поднимая гамму до 2.2
В этом случае дефокус работает в истинно-линейном пространстве.
Если хочется усилить яркость бликов в дефокусе, гамму нужно менять сильнее. Например, 0.1 на входе и 10 на выходе.
Параметр Bloom Level нужно всегда выставлять в 0, т.к. он порождает отвратитеьлные фейковые "ирисы"

DirectionalBlur так же работает правильно только при гамме = 1, т.е. в истинно-линейном пространстве.

На этом принципе основаны макросы DefocusGamma_v02-1.setting и DirectionalBlurGamma_v02.setting

При работе с 32-битными изображениями Glow и Blur в режиме Gaussian могут в области, изначально окрашенные в черный, окрашивать в отрицательный цвет.
В этом случае можно режим Gaussian переключить на другой, более медленный Barlett, или менее точный Blend, либо поставить следом Brightness/Contrast с включенным Clip Black

Поскольку Glow складывает исходное изображение с его разблюренной копией аддитивно в режиме Threshold, нужно чтобы входящее изображение было умножено на альфу.

Для ILRackDef нужно, чтобы альфа была белая (иначе происходит умножение на нерасфокусную альфу) и чтоб самые дальние области в канале глубины были белыми, а ближние - черными. Если фон предполагается прозрачный, он должен быть белым вне зависимости от инверсии канала глубины

Monsters>Rack Defocus модифицирует картинку даже при радиус = 0

Более аккуратный композный моушнблюр с использованием векторов движения можно получить, если рендерить 3Д с повышенной частотой кадров, затем смешивать несколько полученных кадров в один.
В этом случае можно имитировать неравномерость плотности моушнблюра: она обычно ниже в середине и нарастает к концам смазки.

[size=large]Работа с пленочным зерном и шумом:[/size]

Зерно рационально класть один раз, в конце потока, перед сейвером, применяя к нему маски.

В 5-й версии Фьюжена в Grain появилась новая опция - Alpha-Multiply, что сильно упрощает наложение зерна на скомпоженное изображение.
Нужно сделать альфу черной у фоновой картинки (Matte Control, Invert matte) - все вкомпоженные элементы будут добавлять в альфу соответствующие белые области.
Если к полученному изображению применить Grain, Alpha-Multiply, зерно ляжет только на вкомпоженные объекты.

В случае, если контур вкомпоженного объекта сильно размыт, нужно значительно поднять гамму у маски для зерна или у альфа-канала, если зерно кладется по альфе чтобы избежать исчезновения зерна на середине перехода от вкомпоженной области к фону.

Если по мягкой маске объединяется два изображения, имеющие зерно, нужно через инструмент Color Curves выделить в маске область перехода от одного изображения к другому и применить Grain к этой области.

Крайне нежелательно менять параметр Power. Его увеличение порождает появление зерен, присутствующих одинаково во всех трех каналах. При просмотре каждого канала по отдельности результат может устраивать, но при просмотре цветного изображения в режиме проигрывания зерно будет слишком сильным, т.к. зерна из разных каналов будут взаимно усиливаться.

Поскольку в сканированном материале зерно каждого канала распределяется независимо, регулировать его силу нужно через параметры Red, Green, Blue Difference, поочередно выводя на экран красный, зеленый и синий канал.

Зерно имеет бОльшую амплитуду в светлых областях нежели в темных. Эту особенность можно воспроизвести во вкладке Spread, понизив индивидуально значения RGB в тенях.
Впрочем, после прегрейда картина может меняться и в отдельных каналах сила зерна в тенях может стать даже больше чем в бликах.

Размер зерна указывается в пикселах, безотносительно к размеру кадра - при рендеринге с пониженным качеством зерно будет менять размер.

Если нужно стилизовать картинку под старую пленку, крупное зерно желательно использовать в сочетании с Offset или Displace по зерну, т.к. детали изображения не могут быть меньше размера зерна.

Можно эффективно подавить шум на статическом плане, смикшировав соседние кадры через Dissolve в следующей пропорции: 1+0.5+0.25+0.125+0.0625...
Т.е. прозрачность каждого кадра=1/2**(n-1), где n - порядковый номер данного кадра.
Желательно предварительно стабиллизировать кадр.

[size=large]Математика, используемая в инструментах цветокоррекции (например, Brightness/Contrast):[/size]

NewColor=Color*Gain
Color=NewColor/Gain

NewColor=Color^(1/Gamma)
Color=NewColor^Gamma

NewColor=Color+(Color-0.5)*Contrast
Color=NewColor+(NewColor-0.5)/(Contrast+1)+0.5

NewColor=Color+Brightness
Color=NewColor-Brightness

NewColor=(Color-Low)/(High-Low)
Color=NewColor*(High-Low)+Low

Можно инвертировать параметры инструментов, используя следующие формулы:

InvertedHigh=High/(High-Low)
InvertedLow=-Low/(High-Low)

InvertedBrightness=-Brightness

InvertedContrast=-Contrast/(1+Contrast)

InvertedGamma=1/Gamma

InvertedGain=1/Gain

InvertedTint=Tint+0.5

InvertedStrength=-Strength

[size=large]Досадные особенности:[/size]

Сильно глючит инструмент CreateBumpMap (падает Фьюжн, карта нормалей просчитывается некорректно). При его использовании желательно делать пререндеры.
 

Григорий Чаленко

Куратор форума
Команда форума
Рейтинг
948
#6
[size=large]АНИМАЦИЯ, СКРИПТЫ, ТАЙМЛАЙН, РЕДАКТОР СПЛАЙНОВ[/size]

При анимации по пути, если создавать ключевой кадр интерактивным перемещением или через контекстное меню Set Key, точка создается и на пути, и на графике перемещения.
Если добавить к пути точку через инструменты редактирования сплайнов, ключевой кадр перемещения не будет создан.
Если ключевой кадр создавать на графике перемещения, на пути новой точки не появится.
При этом те точки на пути и на графике перемещения, которые связаны между собой, называются Locked и обозначаются бОльшим квадратиком.
Конвертировать тип точки можно через кнопку Lock Points

Для того, чтобы заставить двигаться объект по окружности, можно создать motion path с одной точкой и вращать motion path

Для того, чтобы превратить маску или любой другой сплайн в траекторию (motion path), нужно сделать publish или animate для этой маски/сплайна, сделать animate для точки, которую предполагается анимировать по пути, затем в параметрах созданного пути на Right-click here... RMB>Connect To> выбрать маску/сплайн. После этого анимировать параметр Displacement в настройках пути.

Конвертировать любой сплайн в motion path можно так же через экспорт/импорт в файл

Holding the Alt key down while clicking on the "None" button will remove all splines from the Spline view.

При редактировании точек входа-выхода или перемещении трека на таймлайне, когда трек коллапсирован, смещаются ключи анимации. Для редактирования точки входа без смещения ключей нужно развернуть вложенные треки.

Для того, чтобы при перемещении анимированной позиции создавался ключевой кадр, нужно, чтоб был активен инструмент пути Insert and Modify
Если нужно создать ключ анимации после последнего существующего ключа, нужно, чтоб был активен инструмент пути Click Append

Точки входа-выхода клипов можно просматривать и редактировать через Spread Sheet (действует как trim)

Числа, показывающие Global Out (точку выхода) всегда больше на 1, чем в действительности для всех нод кроме лоадеров.

Импортировать камеру из 3D-Max можно через формат .ase. После импорта нужно выставить 3D Controls>Rotation Order = XZY

При экспорте трекинга из Boujou в композицию Fusion есть две особенности:
1. В полученной композиции исходная секвенция лежит на таймлайне в соответствии с номером кадра, которым она начинается, в то время как анимация камеры начинается всегда с нулевого кадра.
2. Облако точек имеет масштаб в 100 раз меньший, чем камера. Необходимо установить Boujou_PointCloud.Transform3DOp.Scale=100

Импорт анимации из Нюка:
1. В Нюке RMB На анимированном параметре, File>Export Ascii...
2. Запустить MS Excel, перетянуть полученный файл туда.
3. Добавить столбец в начало таблицы.
4. Заполнить вставленный столбец числами с приращением 1 (пронумеровать строки, начиная с 1).
5. Выделить два полученных столбца, Ctrl+C.
6. Открыть блокнот, Ctrl+V.
7. Выделить один символ табуляции, Ctrl+C.
8. Ctrl+H (Replace), Ctrl+V, в поле Replace with ввести пробел, нажать Replace All.
9. Добавить строку в начале текста, ввести DFSP, сохранить файл с расширением .spl.
10. Во фьюжене анимировать параметр, который нужно импортировать.
11. Перейти в Spline, RMB>Import Spline...

[size=large]Выражения, скрипты[/size]

Использовать только позитивные значения какого-либо анимированного параметра можно, умножив его на (x>0)
Например, n1*(n1>0) вернет либо положительное значение, либо 0.
Такая конструкция компактнее чем if(n1>0,n1,0)

Для того, чтобы связать позицию 3Д-объекта (например, pEmitter) с 2Д-координатами (например, анимация по пути) нужно:
1. Создать Expressions на Translation > X Offset и Y Offset.
2. В экспрешшене на X Offset Point in 1 приконнектить к 2Д-координатам (анимации по пути и т.п.), во вкладке Number Out ввести: p1x-0.5
3. В экспрешшене на Y Offset сделать то же, но во вкладке Number Out ввести: (p1y-0.5)/<ширина кадра в пикселах>*<высота кадра в пикселах>/<аспект пиксела>
Для паловской картинки выражение Y будет таким: (p1y-0.5)/768*576
вычитание 0.5 нужно потому что 2Д-координаты начинаются от левого нижнего угла, а 3Д-координаты - из центра кадра.
Деление и умножение на размеры кадра нужно, потому что масштаб размеров оси X и Y в 2Д-координатах соответствует ширине и высоте кадра соответственно, т.е. вне зависимости от соотношения сторон картинки, правый верхний угол будет иметь координаты X;Y = 1;1. В 3Д-координатах - иначе: масштаб по обеим осям - одинаков, за единицу берется размер кадра по горизонтали (по оси X)
пример композиции

Второй вариант - воспользоваться Simple Expressions:
1. RMB на X Offset, Expression
2. В строке выражения ввести: <Нода, содержащая путь>.<Параметр, присоединенный к пути>.X-0.5
Например: Merge1.Center.X-0.5
3. RMB на Y Offset, Expression
4. В строке выражения ввести: (<Нода, содержащая путь>.<Параметр, присоединенный к пути>.Y-0.5)/<ширина кадра в пикселах>*<высота кадра в пикселах>/<аспект пиксела>
Например: (Merge1.Center.Y-0.5)/720*576/1.066667

Реализация условий (функция if) в Simple Expression:
(<условие>) and <значение при выполненном условии> or <значение при невыполненном условии>
Например, (Merge.Blend>0) and 5 or 0
Второй вариант:
iif(<условие>,<значение при выполненном условии>,<значение при невыполненном условии>)
Например, iif(Merge.Blend>0, 5, 0)

Пример использования координат точки в simple expression для одиночного значения (number):
Transform.Center.X

Можно, так же, в выражения вставлять прямую ссылку на анимационный путь, например:
Path.Position.X

Или на трекер:
Tracker.SteadyPosition.X
Tracker.UnsteadyPosition.X

Или на результаты модификатора Expression:
Expression.NumberResult
Expression.PointResult.X

Для того, чтобы применить simple expression к координатам точки (point), нужно использовать конструкцию типа:
Point(<выражение для X>, <выражение для Y>)
Например, Point(Blur.XBlurSize, 0.5)

Можно получить полный список свойств инструмента, доступных в Simple Expressions, введя в консоли:
for i,tool in <ИмяИнструмента>:GetInputList() do print(tool:GetAttrs().INPS_ID) end
Например, for i,tool in Transform12:GetInputList() do print(tool:GetAttrs().INPS_ID) end

Команда Help "<ИмяОбъекта>" позволяет получить все методы указанного скрипта или инструмента - любого объекта. В качестве имени нужно использовать стандартное имя, без номера, добавляемого в имени ноды. Например, Help "Loader" выводит список свойств, которые есть у всех лоадеров. Help "Image" выводит список параметров, которые можно запрашивать у всех нод, работающих с изображением в формате <Имя_Ноды>.Output.<Параметр> или <Имя_Ноды>.Input.<Параметр>.

Чаще всего в Simple Expressions используются такие свойства изображения: <Имя_Ноды>.Output.OriginalWidth, <Имя_Ноды>.Output.OriginalHeight, <Имя_Ноды>.Output.OriginalXScale, <Имя_Ноды>.Output.OriginalYScale

При помощи свойства <Имя_Ноды>.Output.ProxyScale можно получить в скрипт состояние режима прокси, включенного при рендеринге. Это свойство меняется в зависимости от установок (Half Size, Third Size и т.д.)
Например, если у вас композиция 2K, а на выходе должен быть PAL, можно создать simple expression на Resize>Width, в строке выражения ввести 720*Loader1.Output.ProxyScale

Форматировать текст, создаваемый скриптом, можно через управляющие символы \t - табуляция и \n - новая строка

С помощью функции Text() можно вставлять в текстовое поле Text+ результат выражений simple expressions.
Например, строка Text("Reverse Count: "..string.sub(100-time/3.5,1,5).."\n".."Current Frame: "..time), используемая как simple expression для поля StyledText создаст такой текст:
Reverse Count: 88.28
Current Frame: 41
string.sub() берет для счетчика первые 5 символов полученного числа, включая точку
\n делает перенос на новую строку
time возвращает номер текущего кадра

Для того, чтобы отобразить таймкод определенного лоадера в Text+, нужно:
RMB на поле Styled Text>Expression
в появившейся строке ввести: Text(Loader1.TimeCodeOffset+time-Loader1.GlobalIn)

Для того, чтобы вставить в Text+ имя файла из сэйвера, достаточно:
1. RMB на строке StyledText, выбрать Expression
2. Ввести Text(string.gsub(Saver1.Clip.FileName, "^(.+[/\\])", ""))
либо Text(string.gsub(Saver1.Clip.FileName, "(.*)\\", ""))
где Saver1 - имя интересующего сэйвера.
Text() - функция конвертирующая разные типы данных в текст в Simple Expressions

С помощью simple expressions можно отображать инструментом Text+ информацию из метаданных:
Text(Loader1.Output.Metadata.TimeCode)
Text(Loader1.Output.Metadata.Filename)

Для того, чтобы отобразить в Text+ имя папки второго с конца уровня, обозначающей имя шота (например, в таком случае: D:\Project_Name\Scene_Name\Shot_Name\2048x1556\Files.0000.dpx),
нужно вставить в Text+>Script>Frame Render Script следующие строки:
string.gsub(Loader1.Clip.FileName, ".+\\(.+)\\.+\\.+$", function(s) FolderName = s end)
StyledText = FolderName


Чтобы узнать скорость изменения параметра, можно создать такой simple expression:
<Имя_Ноды>:GetValue("<Параметр>", time+0.5)-<Имя_Ноды>:GetValue("<Параметр>", time-0.5)
Либо, если экспрешшн создается в той же ноде:
self:GetValue("<Параметр>", time+0.5)-self:GetValue("<Параметр>", time-0.5)
Например, чтобы выяснить, какую скорость придает входящему видео TimeStretcher, достаточно создать дополнительный слайдер и повесить на него simple expression:
TimeStretcher1:GetValue("SourceTime", time+0.5)-TimeStretcher1:GetValue("SourceTime", time-0.5)
Или:
self:GetValue("SourceTime", time+0.5)-self:GetValue("SourceTime", time-0.5)

В Eyeon Script нет функции, делающей корректное округление.
Можно воспользоваться для этого такой конструкцией: math.floor(n+0.5)
n - округляемое число
math.floor() - функция, делающая округление в меньшую сторону
При округлении до сотых выражение будет выглядеть так: math.floor(n*100+0.5)/100
В случае, если округляемое число может принимать отрицательные значения, выражение может быть таким:
math.floor(math.abs(n)+0.5)*n/math.abs(n)

Тригонометрические функции Фьюжн работают с углами в радианах. Для того, чтоб перевести угол из градусов в радианы, нужно *math.pi/180. И наоборот, чтоб перевести радианы в градусы, нужно *180/math.pi.

Для создания пользовательского параметра в инструменте, предназначенного для микширования между одним состоянием и другим (наподобие Dissolve Background-Foreground или Merge Subtractive-Additive)
Нужно воспользоваться тегами SLCS_LowName и SLCS_HighName
Например:
SLCS_LowName = "Background",
SLCS_HighName = "Foreground",


Если после создания пользовательского параметра открыть композицию в текстовом режиме и установить в разделе UserControls IC_ControlPage = -1, параметр будет отображаться не в какой-либо вкладке, а сразу под заголовком инструмента.

Неполный список атрибутов пользовательских параметров: http://vfxpedia.com/index.php?title.../Applications/Fusion/Classes/Input/Attributes

Для того, чтоб разложить параметры макроса по вкладкам, можно воспользоваться тегом Page. Если указать его в одном из отображаемых параметров, все последующие будут отображаться на той же вкладке. Например:
Input9 = InstanceInput {
SourceOp = "Transform1",
Source = "Center",
Page = "Transforms",
},


При написании длинного выражения в Simple Expressions, удобно создать дополнительные user controls, в экспрешшенах которых можно сделать предварительные вычисления с тем, чтобы их результат использовать в главном выражении.
 

Григорий Чаленко

Куратор форума
Команда форума
Рейтинг
948
#7
ИМПОРТ ИЗОБРАЖЕНИЙ/РЕНДЕРИНГ

При импорте можно перетаскивать исходники из проводника во Flow или в Timeline. При этом для импорта секвенции можно перетащить любой файл секвенции или папку.

Для импорта отдельного файла из секвенции нужно при перетаскивании удерживать Shift.

Для того, чтоб обновить лоадер, достаточно выделить его и дважды нажать Ctrl+P

В настройках можно установить, чтобы нумерация импортируемых секвенций начиналась с 0, с 1 или в соответствии с существующей нумерацией секвенции

В поле Filename лоадра нужно указывать имя существующего файла. Например, нельзя указать имя D:\Project\Scan\Sequence.0000.dpx если секвенция начинается с 15-го кадра.

Во вкладке Comment лоадера (со значком (i)) можно обнулить смещение таймкода DPX так, чтобы таймкод начинался с первого кадра клипа. Это бывает нужно, чтобы определить локальное время смещенного по таймлайну клипа.

Опция Set Sequence Start в сэйвере меняет нумерацию кадров отсчитываемых секвенций таким образом, что кадр начала основного лоадера/криэйтора ветки, подключенной к сэйверу, на таймлайне приравнивается к значению Sequence Start Frame. Под основным понимается тул, поверх которого всё мерджится.
Например, если лоадер/криэйтор на таймлайне начинается с 78-го кадра, а Sequence Start Frame=12, то при рендеринге 78-й кадр станет 12-м.
При этом, сэйверы, имеющие одинаковое значение Set Sequence Start, но подключенные к веткам с разными точками входа, будут иметь разное соответствие нумерации секвенции и кадров по таймлайну.

Настройки полей самого нижнего слоя и сэйвера должны совпадать во избежание ресэмплинга
Выходжное разрешение зависит от разрешения самого нижнего слоя

Если исходники импортируются с разной интерпретацией полей, нужно в сэйвере устанавливать Pal Fields вместо Auto

Сэйвер может сохранять кадры секвенции во время работы с композицией, если ноду сэйвера отобразить во вьюпорте, включить режим HiQ и установить параметр SaveFrames = Hi Quality Interactive.

Через вызов контекстного меню на Clip Range в Loader можно вручную установить длину клипа, или автоматически определить длину.

Если в премьере на таймлайне лежит секвенция, просчитываемая во Фьюжене, на кадре в позиции курсора просчет останавливается

Во время рендеринга переход на следующий кадр в таймлайне происходит сразу после окончания рендеринга предыдущего.

В Рендер менеджер можно перетаскивать файлы композиций из проводника

После сбоя можно восстановить очередь рендер-менеджера (queue) из Fusion:\Queue\Autosaves

В Рендер Менеджер можно указать сложный диапазон рендеринга проекта, например: 1..15,102..156
То же можно сделать в окне настроек рендера, в поле Frame Range

Пути к файлам:

Для того, чтоб указать кол-во разрядов в нумерации секвенции сейвера, нужно после имени выходного файла вписать соответствующее кол-во нулей или любых других цифр.

Если исходники находятся в одной папке с файлом композиции или в подпапках, к ним автоматически прописывается относительный путь типа Comp:\Source\Sequence.000.tga

Для того, чтобы прописать относительный путь к исходникам, хранящимся в папках на уровень выше, можно воспользоваться досовскими соглашениями: "." - текущая папка, ".." - родительская папка. Путь может выглядеть так: Comp:\..\..\Sources\Sequence.tga

Если в лоадере указать путь к Proxy, при включении режима прокси будет подставляться прокси-сиквенс

Для того, чтобы не сбивалось назначение каналов EXR, можно подменять исходники в лоадерах, открыв композицию в текстовом редакторе. При этом, можно пользоватся поиском и заменой для пакетного изменения путей.

Цвет:

При работе с 32-битным цветом, имеем расширенный динамический диапазон от -10^38 до +10^38 вместо 0...1.
Фьюжн может обрабатывать и сохранять HDRI

32 bit images use floating point, which gives excellent accuracy with small (0..1) numbers while still allowing very large numbers at reduced accuracy. Think of a 32 bit floating point number as being a 23 bit integer number, with a multiplier. If the multiplier is 1, it has the same accuracy and range as ordinary 23 bit integers. If the multiplier is larger, you get much larger numbers. If the multiplier is smaller (say 0.001), you can have very accurate small numbers.

16 bit float uses a 10 bit integer with a smaller multiplier, so it has more accuracy than 8 bit ints (though not always as much as 16 bit ints) while still allowing pretty large numbers, and at half the memory usage of 32 bit floats.

Float32 range is about +/- 10**38, accurate to around 7 significant digits. Float16 range is +/- 65504, with around 4 significant digits of accuracy. Floating point numbers are therefore very accurate for small numbers, but relatively inaccurate for large numbers (which happens to match up well with the human eye).

Чтобы сделать картинку не предумноженной (non-premulitplied), нужно применить ChannelBooleans со следующими установками:
Operation: Divide
To Red: Alpha BG
To Green: Alpha BG
To Blue: Alpha BG
To Alpha: Do nothing

Такого же эффекта можно достичь с помощью CustomTool со следующими выражениями во вкладке Channels:
Red Expression: r1/a1
Green Expression: g1/a1
Blue Expression: b1/a1

Both will work, however the Channel Boolean approach will be much faster than the Custom tool, as it uses compiled C++ code rather than a pseudo-bytecode expression interpreter.

Досадные особенности:

Если сэйвер на таймлайне начинается раньше, чем ноды, подсоединенные к нему, сэйвер не рендерит всю сиквенцию

Если Buffer A или Duffer B не отображается на Display View, но на буфер выведена картинка, ноды, отвечающие за ее отображение, рендерятся.

При изменении пути к клипу сбрасываются настройки формата в лоадере, что особенно неприятно при работе с EXR и DPX.
Чтобы этого не происходило, нужно менять пути, открывая композицию в текстовом редакторе.
Для конвертации Log>Lin в связи с этим лучше пользоватья инструментом Cineon Log.

Если в композиции используется .r3d исходник, по сети ее сможет считать только один компьютер.
 

svet

Мастер
Рейтинг
215
#8
рендер менеджер считает быстрее самого DFusion порой на 30-50%

T+мышь - вращение выделеных точек маски
S+мышь - изменение размера выделеных точек маски

можно нарисовать полилайнами любые приметивы (квадрат, ромб, звезда давада, окружность, спираль и т.д.) и экспортировать их в сетинги для дольнейшего быстрого использования.

сложные рисунки в паинте, особо анимированые, лучше пока все хорошо:) отсчитать, чтоб не жалеть бессмысленно проведенное время над нежелающим открыться проектом.

симулирование 3Д-лаеров спомощью DVE, дает великолепные результаты и по качеству и по скорости, порой превосходящие реальное 3Д.

Монстры 2,5 лучше не выбрасывать, даже если устоновлен монстр Спидсикс 5, в них остаются прекрасные эффекты - Srays, Rays, отсутствующие в последнем.

галочки можно анимировать (вкл.-выкл), особенно помогает с моушен блюр.
 
#9
Вот такой совет дают спецы из Айона:

Additionally, there's a helpful trick in Fusion 5 that probably didn't make it into the manual: You can save up to 10 alternate settings for the selected tool by pressing Ctrl+Alt+0..9, and recall those settings with Alt+0..9. The neat thing is, these settings are persistant (saved with the comp), and are also saved in Settings files, in bins, or as defaults too, so you can have half a dozen commonly-used settings for your favourite tools always available via a hotkey.

Штука очень полезная, если часто требуется выбирать что-либо из разных вариантов.
 
#10
Вот еще совет от Айона по части кеинга:
I took the saturation channel of a luma keyer (unmultiplied), set it to invert played with the ranges / blur and expansion until I got the white portion of the shirt solid. Then I used an inverted luminance key (unmultiplied) to get the black part of the shirt. I then added the two alpha results together using a channel boolean. That seemed to do me pretty good, but I'm not sure how it would work out for the rest of the sequence.

Sean Konrad - Product Specialist
eyeon Software
 

svet

Мастер
Рейтинг
215
#11
а своими словами слабо:), а то что я с Ctrl+Alt+0..9 не понял, настройки чего туда заганяются, попробовал загнать тул, результат 0.
 
#12
Буржуи "поддержали" идею Гриши и вносят свою лепту в эту тему:

If you're going to render the 3D particles (pRender connected to a Render3D tool) then do an ordinary 2D blur, you might want to consider rendering the particles directly to 2D (straight from the pRender, DF4-style). This operates just like it did in DF4 - all blur methods are supported etc.
To do this, disconnect the pRender's output from all tools, view the pRender, then from the image view's context menu, choose Views -> 2D Viewer. You can now connect it to any 2D tool.
Also, pRender now has a Camera input that you can connect a 3D camera to, which allows you to get imported 3D camera moves in 2D mode.

Daniel Koch
Director of Bit Wrangling, eyeon Software
daniel@eyeonline.com

 
#13
Соединение эмиттера частиц с трекером:
pEmitter->Region->X Offset->Connect To->Tracker1->X Position (3D Space)
Так же соединяется Y Offset, Z оставить 0.
 
#14
Экспорт LUT из 4.04е в Fu5:

So to get this to work go into DF4 and export the LUT as RGBA normalized. Take it into Notepad (see below) and remove the line of "65536 65536 65536 65536"

That will import into Fusion 5

DFLT
1
65536 65536 65536 65536
0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
0.000015 0.000015 0.000015 0.000015 0.000031 0.000031 0.000031 0.000031
 
#15
glass distortion:

made a displacment map in photoshop with different values of grey assigned to the different shards. This was piped into the displace tool and it seemed to work pretty well.
 

Григорий Чаленко

Куратор форума
Команда форума
Рейтинг
948
#16
Если речь идет об анимированных 3Д-объектах, которые отражают и преломляют, можно отсчитывать в 3Д карту нормалей и дисплейсить несколько раз по разным каналам (RGB ).
По этим же нормалям можно и блики положить.
 
#17
Коллега Sander de Regt из Голландии дает по этому поводу такой совет:
In that case I would make a couple of lo-res shapes (BG with a
mask) and use these as bitmapinputs for a couple of particle image emitters. Use a black/white image to determine where the particles will be born and use directionals force for wind and gravity, turbulance for randomness of the movement and all other kinds of operators to enhance the effect.

 
#18
Для перемещения по таймлайну в Фу5 по полкадра (и, соответственно, для возможности создавать ключи с дискретностью одно поле) специалисты Айона предлагают:
F5 will certainly process in Field mode if the Loader (or Saver) is set to Fields, just as with DF4.
Perhaps you wish to step to individual fields on the timeline?
You can do that by right-clicking on the << or >> buttons and choosing a 0.5 step.
 
Сверху