Рендер с оверсканом без мам, пап и плагинов

—

от автора

Наглядная ситуация: после применения дисторсии на рендер его границы предательски лезут в кадр.

Большой сфере слева явно плохо

Большой сфере слева явно плохо

Без паники! 

Для решения проблемы потребуются:

  1. композер джун обыкновенный — одна штука;

  2. продукт компании The Foundry — «Nuke»;

  3. несколько минут для прочтения данной статьи.

За данность примем наличие трекнутой камеры и модели дисторсии линзы. Разрешение исходника 3840 х 2160. Начинаем!

В Нюке к отснятому материалу 

Наш условный "исходник"

Наш условный «исходник»

применяем андисторт — bounding box(пунктирная линия по периметру) картинки увеличится. 

андистортнутый исходник

андистортнутый исходник

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

Левый нижний угол

Левый нижний угол

-248 — значение по х

-141 — значение по у

Правый верхний угол

Правый верхний угол

4088 — значение по х

2301 — значение по у

Далее добавляем ноду Reformat, ставим ей тип ресайза(resize type) на none и в поле разрешения вписываем размер ббокса (сумма по горизонтали Х и вертикали Y, все значения приводим к абсолютным значениям). Сложение можно прописывать непосредственно в поле ввода, ставя знак «+».

Настройки ноды Reformat

Настройки ноды Reformat

У нас получилось новое разрешение 4336 х 2442.

Затем разделим его на старое — получим коэффициент увеличения кадра по горизонтали и вертикали.

4336 х 2442 — новое разрешение.

3840 х 2160 — старое разрешение.

4336/3840 = 1,13 — горизонтальный коэффициент.

2442/2160 = 1,13 — вертикальный коэффициент.

На эти коэффициенты(у горизонтали и вертикали они могут отличаться) умножаем соответсвенно размеры матрицы камеры — так мы получим немного расширенный FOV, так и надо. Вот исходные данные нашей условно трекнутой камеры:

Атрибуты нашей камеры

Атрибуты нашей камеры

Горизонтальный размер — 24,576

Вертикальный размер — 18,672

24,576 * 1,13 = 27,77 — новый горизонтальный размер матрицы.

18,672 * 1,13 = 21,1 — новый вертикальный размер матрицы.

Далее выбор за вами:

  • забить новые значения размеров матрицы в камеру и передать ее 3д отделу;

  • передать камеру как было и попросить 3д отдел самим у себя вписать новые размеры матрицы(ориентируйтесь на слова filmback size или sensor size).

Выводим сиквенцию с андистортом и новым форматом для 3д отдела для подстановки на бэк.

Схема подключения нод

Схема подключения нод

В синеме я накидал вот такую простую сцену:

Условная сцена в 3д

Условная сцена в 3д

Расположил четыре сферы на пересечениях линий для более наглядного примера. Заменил старый размер матрицы на новый 27,77:

Атрибуты камеры в синеме

Атрибуты камеры в синеме

Как только получили отрендеренную сиквенцию

Изображение, полученное из 3д пакета

Изображение, полученное из 3д пакета

применяем к ней обратный алгоритм:

  1. Реформатим к старому разрешению. Используем ноду Reformat, режим none, галочку напротив preserve bounding box, разрешение ставим старое — кадр кропится к исходному формату с появлением увеличенного ббокса

    Настройки ноды Reformat

    Настройки ноды Reformat
  2. Применяем дисторсию

Вуаля! Рендер корректно наложился с дисторсией съемочной линзы на исходный материал без обрезанных краев!


ссылка на оригинал статьи https://habr.com/ru/articles/757468/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *