Реальные объективы камер имеют искажения, но виртуальные камеры в 3D-программах лишены этого эффекта, что приводит к рендерам с прямыми линиями. Чтобы объединить CG (компьютерную графику) с реальными видеоматериалами, необходимо применить искажения объектива.
Это может привести к появлению пустых краев на рендере.
Overscan помогает решить эту проблему, добавляя дополнительные поля при рендере, чтобы после применения искажений кадр оставался полным.
В этом руководстве мы покажем, как применять overscan в различных инструментах для работы с 3D.
Overscan через камеру Nuke
Зачем нужен overscan?
Скриншот 1 показывает сетку с искажением объектива. Вы можете увидеть, как прямые линии искажаются по краям.
Предположим, что объект CG находится на краю кадра (скриншот 2).
Чтобы CG-объект был правильно отрендерен на видеоматериале, необходимо применить к нему искажение, соответствующее объективу.
В этом случае, после применения искажения, часть CG будет растянута, и появится эффект «повторения» (tiling).
Чтобы узнать, какой overscan необходим, можно посмотреть настройки ограничивающей рамки (bounding box) в Nuke.
Пунктирная рамка показывает, насколько изображение выходит за пределы краев.
Также можно создать узел reformat с следующими параметрами:
Важно отметить, что overscan — это не просто увеличение разрешения рендера. Это увеличение угла обзора камеры плюс увеличение разрешения рендера CG.
Cinema 4D
Чтобы создать overscan в Cinema 4D, существует удобный скрипт xpresso, который создаст новую камеру с параметрами overscan.
Для этого добавьте Canvassizecamera в свой проект и выберите тег xpresso.
Далее, в параметре камеры вам нужно создать ссылку на вашу 3D-камеру. После этого укажите старое разрешение и новое разрешение с overscan, затем активируйте камеру Canvassizecamera. Не забудьте указать новое разрешение в настройках рендера проекта.
В результате рендер будет иметь увеличенный угол обзора (FoV).
Houdini
Mantra
Чтобы задать overscan, необходимо перейти в настройки камеры, вкладку View, а затем в поле Resolution указать, какой процент overscan требуется.
Затем необходимо указать новое значение в поле Screen Window Size. В примере это значение — 1.1.
При рендере выберите нужную камеру с применёнными изменениями и не изменяйте разрешение в настройках рендера.
Karma
Чтобы задать параметры overscan, перейдите в настройки рендера, вкладка Image Output → Aspect Ratio.
В поле Data Window NDC укажите необходимые параметры.
Например, для overscan в 10% параметры будут следующими: -0.1, -0.1, 1.1, 1.1
Обратите внимание, что первые два поля должны иметь отрицательные значения.
Houdini Docs:
По умолчанию установлены значения 0, 0, 1, 1 (без обрезки). Обратите внимание, что можно использовать отрицательные значения.
Например, -0.1, -0.1, 1.1, 1.1 даст вам 10% overscan с каждой стороны.
Blender
Для применения overscan в Blender необходимо установить аддон. Аддон был протестирован на версии программы 3.5.1.
Скачать скрипт Оверскан (Python).
Скачать скрипт Overscan Background Popover (Python)
Инструкции по установке
Разместите оба файла по следующему пути:
Windows: C:\Users\{USER}\AppData\Roaming\Blender Foundation\Blender\3.5\scripts\addons
Linux: HOME/.config/blender/3.5/scripts/addons
macOS: /Users/$USER/Library/Application Support/Blender/3.5/scripts/addons
Затем запустите программу, перейдите в настройки и включите аддоны:
После этого в окне просмотра появится дополнительная кнопка, которая откроет меню.
Overscan Percentage — укажите процент overscan;
Toggle Overscan — увеличивает overscan на указанный процент;
Restore Original Settings — возвращает исходные параметры.
Maya
Чтобы задать overscan в Maya, независимо от рендерера, необходимо зайти в настройки рендера:
Укажите новое разрешение с overscan. Например, если вам нужно 10% overscan, то новое разрешение для 1920×1080 будет 2112×1188.
Затем в Outliner выберите нужную камеру и в атрибутах камеры измените параметр Camera Scale, указав необходимое увеличение поля зрения (FoV) камеры. Например, для 10% увеличения нужно указать 1.1.
Заключение
Теперь вы понимаете назначение overscan и как работать с ним в различных 3D-пакетах.
Для удобства вы можете использовать ⚙️🔧 скрипт для Nuke, который автоматизирует процесс создания overscan и подготовки узлов для его дальнейшего использования.