stat
 
 
 
 
 
 
 
  TBS - Журнал Цифровое Видео    
Скидки
Разделы форума
Системы нелинейного
монтажа
Общие вопросы
Видеооборудование
Аудиооборудование
Светофильтры
Осветительное
оборудование
Барахолка
Поиск по архиву

Режим: "и" "или"
Избранное
Архив журнала
Цифровое Видео
#4 #5 #6
  #1 #2 #3
#4 #5 #6
  #1 #2 #3
#4 #5 #6
  #1 #2 #3
#4 #5 #6
  #1 #2 #3
#4 #5 #6
  #1 #2 #3

Пространственная видеосинкразия

Лэхлан Уэстфолл,
при содействии Дуга Барнарда
и Криса Мэннерса

Как популярные пакеты 3D-графики решают задачи работы с реальным миром видео.

      Видеостандарты, разработанные еще при наших бабушках и дедушках, были, по мнению одних, самой передовой технологией своего времени, а по мнению других - жестокой шуткой над будущими поколениями компьютерных аниматоров. Видеосигнал устроен весьма непросто, и от этой видеосинкразии у работающих в области пространственной анимации порой просто крыша едет. Я это говорю, основываясь на личном опыте.
      В отличие от кинофильма, который состоит из ряда неподвижных изображений, проецируемых на экран со скоростью 24 кадра/с, видеосигнал c его чересстрочной разверткой1 порождает множество проблем, когда видео используется в программе 3D-графики. Мы надеемся пролить свет на связанные с этим проблемы и неожиданности, а также предложить решения для тех, кто хотел бы включать захваченные видеофрагменты в пространственную анимацию.

Видеозахват

      Долгие годы единственным источником видео служила видеокамера. Естественно, камера давала видео в правильном формате, и ни режиссеру, ни работникам студии не приходилось много о нем заботиться. Однако в последние годы появился совершенно новый способ создания видео - программы 3D-графики, работающие на мощных персональных компьютерах. Современные программы 3D-графики предоставляют нам все, что требуется для создания любого видео - от рекламного клипа до полнометражного фильма - на персональном компьютере (если у него достаточно дискового пространства), даже не прикасаясь к камере. Можно также вставлять элементы 3D-графики в отснятые видеосцены и наоборот. Это, конечно, замечательно, но видео, обработанное неправильно, может дать ужасные результаты - дрожащие строки, потерю синхронизации со звуком и т. п.
      В данной статье мы рассматриваем популярные пакеты 3D-графики - LightWave 3D 5.6, Inf ini-D 4.5 и 3D Studio MAX 2.5 - с точки зрения работы в них с видео. Надо подчеркнуть, что в этой статье не будет подробного всестороннего обзора каждого пакета. Вместо этого мы проверим, как каждый пакет справляется со множеством связанных с видео проблем. Поэтому мы не собираемся вдаваться в детали таких функций, как моделирование, которые, безусловно, важны при выборе программы 3D-графики, но не имеют прямого отношения к вопросам ввода и вывода видео. Чтобы проиллюстрировать основные способы использования видео с программами 3D-графики, мы провели три теста:
      1. Запись файла, готового к воспроизведению видео, непосредственно из программы. Может ли программа прямо выводить информацию на видео? Как она справляется с приоритетом видеополей (field dominance)? Какие частоты кадров возможны?
      2. Использование видеоматериала как карты текстуры. Нередко можно видеть встроенную в анимацию модель телевизора или видеоэкран в какой-либо форме. Можно ли импортировать материал с чересстрочной разверткой в программу анимации и преобразовать его в обычный формат? Можно ли запустить и остановить карты видеотекстур не в начале и не в конце вашего анимационного файла?
      3. Встраивание элементов 3D-графики в готовый видеоматериал. Такое встраивание сегодня, возможно, самое частое применение 3D-графики, хотите ли вы посадить придуманного персонажа за один стол с живым актером и устроить беседу или же воссоздаете в программе исторический фон для комбинирования с живыми актерами. Могут ли программы самостоятельно справиться с этой задачей?
      Какой бы метод вы ни использовали, встраивание видео в программы пространственного моделирования ставит два важнейших вопроса: вопрос частоты кадров и вопрос развертки. Если вы проигнорируете эти проблемы (а как ни странно, очень многие так и поступают), они настигнут вас снова, когда времени до сдачи работы крупному заказчику будет в обрез. Вы действительно хотите услышать от него: "Почему это видео у вас такое мутное, хотя все остальное выглядит нормально?" - и это после того, как провели бессонную ночь в попытках понять, почему в начале звук синхронизирован нормально, а в конце запаздывает? Думаю, не хотите.

Будьте внимательны с частотой кадров

      Начнем с частоты кадров. Когда вы начнете работать с длинными анимациями, включающими видео, лучше отнестись ко времени внимательней, иначе вы попадете впросак. Этот вопрос неизбежно встанет, если вы интегрируете видео со звуком. Действительно, для оцифрованного звука частота кадров ничего не значит. Поэтому если вы захватываете видео с одной частотой и вставляете его в анимацию с большей частотой, изображение будет воспроизводиться чуть быстрее, чем надо. Но разве звук при этом тоже будет воспроизводиться быстрее? Нет. Если звук - просто фоновая музыка, вы можете не заметить сдвига, другое дело - диалог персонажей.
      В мире, где работает аниматор, вопросы тайминга решаются по-разному. Я был очень удивлен, узнав, что многие профессионалы полностью игнорируют его и выводят фильм с частотой 24 кадра/c. Я могу объяснить это только тем, что все мы выросли на снятых на пленке диснеевских мультфильмах. Из-за этого частота 24 кадра/с для анимации выглядит "правильной". Еще одна причина - при более низкой частоте кадров апертура виртуальной камеры открыта дольше, и эффекты размазывания при движении более заметны.
      Используя импортируемый звук, вы можете смотреть на форму звуковых волн и применять их для визуальной синхронизации слов или звуковых эффектов с действиями персонажей или другими эпизодами анимации. Конечно, аниматоры работают с малым рассогласованием каждый день, но это достаточно важный вопрос, чтобы знать о его наличии и способах его разрешения.
      Из-за этих и других сложностей готовый фильм с чересстрочной разверткой, куда входят звук и пространственная анимация, редко удается получить при помощи одной программы, хотя, если бы это было возможно, экономия времени была бы значительной. Профессионалы обычно используют для получения конечного результата сразу несколько программ: аудиоредакторы, двумерные программы композитинга/эффектов, программы видеомонтажа. Другими словами, нереально надеяться, что одна программа 3D-графики удовлетворит все ваши видеонужды. Однако в знакомой нам студии специальных эффектов работают 23 аниматора и только четыре специалиста по композитингу, так что когда им удается полностью удержать некий проект в руках работающих с программами 3D-графики, они экономят деньги.

Поля кошмаров

      Второй вопрос, который бросается в глаза, касается видео с чересстрочной разверткой. Видеокадр состоит из пикселей и может иметь различные размеры. При этом один кадр реально содержит два изображения: одно - для нечетных линий (1, 3, 5 и т. д.), другое - для четных (2, 4, 6 и т. д.). Телевизор показывает видеокадр, выводя сначала один набор строк (называемый полем), а затем другой. Это будет ясно видно, если вы откроете фильм QuickTime с захваченным видео и посмотрите на отдельный кадр со съемкой быстрого движения.
      Эта изобретательная система позволяет плавно передавать движение, получая только половину данных. Все это действует хорошо, пока мы просто выводим видео на телевизор, но может превратиться в кошмар, если мы захотим использовать видео как карту текстуры в пространственной анимации.
      Карта текстуры - это отдельное изображение или серия изображений (плюс, в некоторых случаях, формула математической процедуры), которые накладываются на поверхность для задания ее цвета, структуры, прозрачности и прочих свойств. Анимированные карты текстур могут быть весьма мощным средством. Например, имея анимированную текстуру для волн, можно получить очень убедительное изображение воды. Анимированные текстуры (обычно в виде фильмов QuickTime, файлов AVI или ряда последовательных изображений) также дают возможность накладывать видеоматериал на объект. Однако, когда используется чересстрочное видео, при наложении карты текстур на объект вы увидите два различных поля.
      Две из рассматриваемых в обзоре программ - LightWave 3D и 3D Studio MAX - позволяют избавляться от чересстрочной развертки в импортированных фильмах. Естественно, это не остановит того, кто хочет использовать видео как карты текстур. Реально возможны два решения: либо размыть видео, ничего не меняя и надеясь, что клиента это устроит, либо убирать чересстрочность при помощи другой программы (см. врезку "Подготовка видео"), оставляя разрешение видео возможно большим. К сожалению, если вы убираете чересстрочность, приходится создавать и хранить на жестком диске вторую копию исходного материала. При этом полученные файлы по объему будут вдвое больше, поскольку вы преобразуете кадры с чересстрочной разверткой в удвоенное число кадров с прогрессивной. Такая ситуация заставляет моего знакомого аниматора хранить 4 Гбайт карт текстур для последнего проекта, когда на самом деле он мог (и хотел бы) обойтись половиной этого объема. Кроме того, надо быть уверенным, что ваша программа хорошо справляется с большими объемами карт текстур, иначе вам понадобится еще больше места.

Проекты

      Теперь, когда мы обсудили два основных вопроса использования видео в программах пространственного моделирования, посмотрим на наши три конкретные задачи. Мы обсудим, какие возможности для каждого типа работ будут обязательными, а какие - полезными. Большинство технических деталей работы каждой программы мы оставляем для отдельных разделов, которые посвящены этим программам, а здесь мы опишем типичный ход работы.

Получение видеозаписи из анимации

      Это самый элементарный из трех наших тестов. Прежде всего, нам надо было определить, может ли каждая программа выводить материал в чересстрочном виде; к счастью, все с этим справились. Уже этот факт показывает, что программы 3D-графики становятся более дружественными по отношению к видео.
      В некоторых видеосистемах верхнее (нечетное) поле идет первым (например, Media 100), в других первым идет нижнее (четное) поле (как в формате DV), так что весьма важно, чтобы можно было выбрать вариант чересстрочного формата. В LightWave 3D есть возможность менять порядок полей, что, конечно, замечательно, однако вам надо догадываться, какой из вариантов в действительности применяется. В остальных программах выбор выглядит так: никакое, верхнее/нечетное или нижнее/четное2.
      Другой важный вопрос, о котором мы еще не упоминали, - выбор между квадратными и неквадратными пикселями. Во многих видеоформатах, например в D-1, пиксели в горизонтальном направлении тоньше. Соотношение ширины и высоты составляет 10:11 (хотя многие программы используют число 9/10, т. е. 0,90, вместо более точного 10/11). Если вы выводите готовое видео из программы трехмерной анимации, поддержка неквадратных пикселей становится необходимой. К счастью, все наши программы справились с этим3.
      Последний вопрос относительно прямого вывода на видео - это частота кадров. Как мы объяснили выше, если вы выполняете вывод на видео и при этом синхронизируете изображение со звуком или собираетесь это делать, важно, чтобы в программе можно было задавать нужную скорость. В противном случае придется импортировать видео в другую программу, например Adobe After Effects, чтобы менять скорость. Это значит, что видео, созданное в программе 3D-графики, надо импортировать в другую программу для подготовки к выводу на видео - дополнительная операция, с которой мы привыкли мириться (и которая дает некоторые преимущества, как мы увидим ниже)4.

Видео как карта текстуры

      Этот тест более сложен. По большому счету, рассмотренные программы в нем показали неудовлетворительные результаты, поскольку ни в одной из них не было способа устранить чересстрочность в импортированном материале. Поэтому, чтобы использовать видео как карту текстуры (и при этом не идти на потерю качества), нам пришлось прибегнуть к утомительной процедуре преобразования (см. врезку "Подготовка видео").
      Другое важное средство - возможность менять частоту кадров импортируемого видео.
      Если видео можно вставить и преобразовать - как надеемся - к правильной скорости, хорошо бы иметь возможность управлять его воспроизведением. В рассмотренных программах можно закольцевать воспроизведение, но было бы удобно также задать определенный диапазон кадров для показа. Infini-D и LightWave позволяют делать это для импортируемых фильмов. MAX требует, чтобы вы редактировали пронумерованный список последовательных файлов (numbered sequential file list). Важная возможность, которая есть в Infini-D и MAX, - задание определенного кадра или момента времени в анимации, когда должно начаться воспроизведение видео.
      Допустим, у вас есть трехминутная анимация, где персонаж приходит домой, открывает дверь, ласкает собаку, включает телевизор и садится в кресло. Здесь наложение видеотекстуры должно начаться после примерно двух с половиной минут анимации. Если невозможно задать определенный момент начала воспроизведения видеокарты, придется или создавать фильм с двумя с половиной минутами абсолютно черного изображения, или рассчитать некоторый цикл и включить видимость карты прямо на нужном кадре. В любом варианте это большая морока. И что вы будете делать, если ваш клиент скажет: "Нет, пожалуй, это видео надо включить чуть позже"? Ага, начинать все сначала, пересчитывать время и переделывать фильм текстуры.
      И наконец, бывают дополнительные возможности, которые упрощают использование видео как текстуры5. Прежде всего, полезно уметь обрезать карты видеотекстур. Захваченное видео, как правило, содержит по краям много мусора, который никогда не виден на телеэкране. Но на карте текстур видно все. MAX позволяет производить обрезку либо непосредственно в координатах отображения изображения, либо интерактивно через редактор материалов, но в остальных программах такой возможности нет.
      Раз уж мы говорим о том, что было бы желательно делать все, не выходя из одной программы, хотелось бы иметь возможность управлять яркостью или настраивать цвет импортируемого видео - хотя бы для того, чтобы превратить черный цвет видео в "настоящий" черный цвет RGB и убрать ненужный шум в тенях. Рассмотренные программы позволяют задавать выходной уровень карты текстур, а MAX - устанавливать такие параметры, как смещение RGB, истинный уровень (true level) и другие важные для настройки характеристики. Но можно и воспользоваться бесплатным модулем plug-in для MAX под названием ColorCorrect, который дает возможность точно настроить практически любой параметр карты изображения.

Встраивание 3D-графики в существующий видеоматериал

      Задачи, которые возникают при интеграции 3D-графики в видеоматериал, требуют более серьезных методов работы, чем простое нажатие кнопки или запуск модуля plug-in6. Самый важный вопрос здесь - возможность загружать видео, в которое вы собираетесь встраивать элементы анимации как фон в ваше окно просмотра. Это позволяет постоянно видеть ваши персонажи на реальном видео. Поскольку вы переносите видео в программу 3D-графики, чересстрочность должна быть тщательно устранена, чтобы можно было смотреть на неподвижное изображение. Использовать видео в качестве фона позволяют все программы. Однако LightWave 3D требует, чтобы фильм перед выводом был преобразован в ряд файлов Targa.
      Как я уже говорил, добиться согласованности камеры по большей части - задача творческая, и существует много творческих методов объединения маленького трехмерного мира в вашем компьютере с видеосъемкой реального мира. Пока камера неподвижна, все еще не так страшно, но даже небольшое движение камеры - серьезное испытание вашего терпения. Когда сцена снимается для фильма с большим бюджетом, специально для будущего согласования с виртуальной камерой на площадке размещают специальные маркеры. Кроме того, ведется подробная запись используемого освещения, положения источников света, типов применяемых камер, объективов; все расстояния на площадке, в том числе положение, высота и угол направления камеры, тщательно измеряются. Однако в реальном случае аниматор получает задание в таком виде: "Вот вам материал. Справитесь с ним к пятнице?" Иными словами, обычно вопрос соответствия приходится решать с тем материалом, который есть.
      Замечательно, что протестированные нами программы обладают некоторыми возможностями, которые могут помочь с этим справиться. В них можно выбрать тип объектива (нормальный, широкоугольный, "рыбий глаз", телеобъектив и т. п.) и задать фокусное расстояние. Кроме того, LightWave 3D и MAX содержат обширный список объективов (включающий IMAX, 65-миллиметровый и многие другие) с соответствующими полями зрения. Правильный выбор объектива - первый шаг построения согласованной перспективы для сцены. В 3D Studio MAX этот шаг для вас упрощает специальная утилита соответствия камеры, которая воспроизводит положение камеры на основе отметок в виртуальном мире, соответствующих объектам реального мира. В MAX есть также утилита Camera Tracker, которая позволяет отследить даже движение камеры при съемке с рук.
      Многие другие возможности также помогают вам вывести персонажи "на сцену". Глубина резкости, дымка и другие пространственные эффекты очень полезны, когда ваша цель - добиться соответствия с реальным миром. Особенно важна глубина резкости, поскольку у виртуальной камеры компьютера глубина резкости бесконечна (т. е. все детали выглядят резко, независимо от расстояния от камеры). Реальные камеры в различной степени создают размытие удаленных объектов в зависимости от настройки. Из рассмотренных программ только в Infini-D нельзя было задать глубину резкости.
      Кроме задания правильной перспективы и освещения, я обнаружил, что, для того чтобы добиться правдоподобного вида сгенерированного компьютером объекта, крайне важны соответствие с исходным видео (или фильмом) по диапазону цветов и гамма-коррекции. Если, например, тени на вашем фоне по цвету отличаются от теней на анимированном изображении, вся сцена выглядит неестественно.
      В реальных условиях подобные тонкие настройки почти всегда выполняются в таких программах, как After Effects, где вы можете менять уровни, добавлять шум и даже применять модули plug-in, разработанные для имитации фильмов. Однако в программах нашего обзора - MAX, LightWave и Infini-D - есть возможность загружать прямо в программу внешние фильтры из Adobe Photoshop и/или After Effects. Загруженные фильтры можно применять к полученной последовательности изображений. В LightWave поддерживаются альфа-каналы, так что можно наложить маску на фон и применить фильтр только к анимированному объекту. Infini-D идет еще на шаг дальше и позволяет применять фильтры к отдельным объектам или к элементам на определенной глубине. Использование этих возможностей требует времени, однако это значительный шаг к созданию композиции пространственной анимации и видео целиком в одной программе7.

Когда лучше идти в обход

      Все аниматоры, которых я знаю, ищут эффективные и гибкие методы создания законченного готового видео. Если эффективнее сделать половину работы в After Effects, следовательно, так и надо делать. То, что нечто можно сделать в программе 3D-графики, еще не значит, что сделать то же самое в программе композитинга/эффектов не окажется быстрее и удобнее.
      Именно поэтому важно, чтобы программы 3D-графики были достаточно гибкими и могли работать со многими другими программами. Помните, что вовсе не обязательно создавать самому все, что требуется для работы. Общепринято брать модели или элементы из других источников, даже из материала, созданного на других платформах. Например, модель стойки с тремя телемониторами, создана в form•Z и импортирована в каждую из рассматриваемых программ. MAX справился с этой задачей хорошо. В LightWave возникли сложности. Я не смог импортировать в LightWave тот же файл .obj, то же самое произошло с версией в формате .dxf, пока я не отрезал в начале файла идентификатор с меткой "I was made with form•Z". Эта проблема из тех, которых совершенно не ждешь, в особенности в отношении продукта, настолько популярного и настолько недешевого. В Infini-D я смог импортировать модель в формате .dxf, но столкнулся с трудностями при выравнивании карт текстур. Точнее говоря, функция автоматического выравнивания (decal) не работала. Потратив некоторое время на телефонные консультации со службой технической поддержки, я получил объяснение, что в работе с картами текстур и импортированными моделями в Infini-D 4.5 есть проблемы. Мне предложили построить модель заново в Infini-D. Утомительно, но для модели телевизора - не смертельно. А если вам досталась готовая модель какого-нибудь живого существа (я знаком с такой ситуацией не понаслышке8)?
      Последний вопрос, который мне хотелось бы обсудить, возникает при передаче файлов из одной программы в другую. Он касается альфа-каналов и многопроходного рендеринга. Важно знать, выводит ли ваша программа прямые (straight) или нормированные (premultiplied) альфа-каналы: некоторые системы видеокомпозитинга могут работать только с одним из этих вариантов (обычно с первым). В идеальном случае программа должна предоставлять вам выбор.
      Многопроходный рендеринг - еще один существенный момент, про который можно было бы написать отдельную статью. По сути дела, раз уж вы решили, что готовое видео будет собираться в программе композитинга, можно воспользоваться преимуществами такого подхода. Предположим, что вы создаете анимацию с персонажем, который носит синюю бейсболку, причем она будет в центре внимания в течение всего эпизода. Если вы производите рендеринг для персонажа отдельно, а для его головного убора - отдельно, вы добиваетесь максимальной гибкости. Ведь может случиться, что заказчик вернется и скажет: "Не-а, мой клиент - фанат "Сан-Франциско Джайентс", а синий - это цвет "Лос-Анджелес Доджерс"9, так что надо его поменять". (Вы, наверное, думаете, что этот эпизод я выдумал? Вы ошибаетесь.) Если вы проводили рендеринг основных элементов по отдельности, то, чтобы внести такое изменение, достаточно просто пару раз щелкнуть по шкале оттенка (Hue) в After Effects. Иначе придется выполнять повторный рендеринг всего фрагмента, причем снова и снова. Выбор за вами.
      Большинство программ позволяют вам включать и отключать различные объекты. Имея возможность выбирать объекты и включать или отключать определенные параметры рендеринга (блики, рассеяние, отражения и т. п.), гораздо проще провести рендеринг несколько раз и получить все слои, нужные для композитинга. Я надеюсь, что избирательный рендеринг и маскирование будут развиваться, когда их создатели узнают, как работает большинство аниматоров. Но, естественно, это произойдет, если пользователи будут заинтересованы в таких возможностях. Программисты не могут читать мысли, и надо, чтобы те, кто разрабатывает программы для вас, точно знал, что вам нужно. Эти программы нужны не им - они нужны вам.
      Еще одно удобное средство - постредактирование при помощи файлов RLA. Вместо того, чтобы делать рендеринг много раз для последующей обработки отдельных элементов, можно записать в файл формата RLA данные глубины (ось Z) для каждого элемента (т. е. реально - для каждого пикселя) итогового изображения. Это позволит вам точно отбирать определенные части изображения для последующей обработки. Например, вы можете после одного рендеринга маскировать все объекты, находящиеся на определенном расстоянии от камеры, или выбрать все объекты с текстурой мрамора. Можно вставить в отснятый видеоматериал с танцорами смоделированные колонны. Такой формат файла дает удивительно богатые возможности. Но для этого придется приобретать программу трехмерной анимации, которая способна выводить файлы RLA, и программу композитинга, которая умеет их читать. Сегодня из программ нашего обзора файлы RLA поддерживают LightWave и 3D Studio MAX. Мы надеемся, что скоро к ним присоединятся и другие. Но опять-таки, чтобы это произошло, пользователи должны проявить активность.

Подготовка видео

Как получить из вашего видео карты текстуры с максимальным разрешением при помощи After Effects

      Самая сложная часть работы с видео в программе 3D-графики - это применение видео, обычно в форме последовательности изображений фильма QuickTime, как карты текстуры. Здесь есть две серьезных проблемы - скорость и чересстрочность. Но, если проблемы со скоростью касаются любого применения видео, для использования его в качестве карты текстур надо решить, как быть с чересстрочностью.
      Отдельный видеокадр на самом деле содержит два поля: одно - с нечетными строками, а другое - с четными. Поэтому когда вы смотрите на единственный неподвижный захваченный кадр из видео с чересстрочной разверткой, изображения на соседних строках относятся к разным полям (см. рис. на с. 37).
      При воспроизведении на телевизоре эти строки обеспечивают плавность воспроизведения. Но если использовать их как карту текстур, они дают некую неприятную расплывчатость. Если вы хотите использовать видео как карту текстур, от чересстрочности необходимо избавиться. К сожалению, из всех протестированных программ только LightWave устраняет чересстрочность сама; для 3D Studio MAX есть модуль plug-in (от www.enthed.se; цена $30), который обрабатывает импортируемое видео.
      Вы быстро поймете, сколько времени и сил экономит такая простая возможность. Как нам сказал один из инженеров компании-производителя, "такую возможность было бы очень просто реализовать, но раньше никто об этом не просил". Так вот, сейчас я делаю это официально - прошу разработчиков программ.
      При устранении чересстрочности каждый кадр видео делится на два поля. Например, один кадр дает два изображения, и у каждого разрешение по вертикали становится вдвое меньше. Другими словами, мы рассекаем каждый кадр на два. Чтобы сохранить соотношение сторон 4:3, надо добавить в каждое изображение интерполированные строки между исходными. Таким образом, вместо кадров видео с чересстрочной разверткой мы получим удвоенное число нормальных кадров, с которыми уже можно работать.
      Звучит здорово, но как этого добиться? При помощи Adobe After Effects - лучшего друга аниматоров после быстрых процессоров. В AE весь процесс выполняется очень просто. Сначала вы импортируете материал и делите его на поля (верхнее или же нижнее первым - в зависимости от вашего оборудования). Затем задаете для исходного материала частоту кадров. AE при этом автоматически выполняет интерполяцию, необходимую для заполнения кадров. И наконец, вы выводите новый фильм без чересстрочности с нужной скоростью и используете его в своей анимации.

Лэхлан Уэстфолл

Выводы

      Я был бы счастлив сказать, что нашел программу, которая идеально справляется со всеми вопросами интеграции пространственной анимации и видео. Но это не так. Во многих программах я видел много полезных возможностей; при некоторой доводке в будущем они станут еще полезнее. Основные проблемы сосредоточены в двух сферах: сложности с устранением чересстрочной развертки и сложности вывода настоящего видео с требуемой частотой кадров. Главное: желая делать все в одной программе, вы можете не справиться с некоторыми ситуациями. В реальности мы рассматриваем программу трехмерной анимации и программу композитинга как единый программный комплекс. Советуем принять такой подход и вам. При этом не придется менять в программе анимации частоту кадров10, это можно будет сделать в программе композитинга. Подобным образом вам не нужно будет выполнять рендеринг для фона, на который вы помещаете персонаж. Фон просто используется для всеобщего выравнивания, рендеринг персонажа проводится с использованием альфа-канала, а сборка - уже в программе композитинга.
      Конечно, у каждого есть свои обходные приемы, и иногда они обеспечивают большую гибкость. Однако было бы идеально не тратить лишнее время на рендеринг, чтобы получить разрешение, достаточное для поля; или же не переносить все в другую программу просто для того, чтобы правильно синхронизировать звук; или целый день готовить видеоклип, чтобы использовать его как карты текстуры. Во всех этих вопросах в программах трехмерной анимации осталось еще очень многое сделать.

LightWave 3D v5.6

NewTek, $1995

      LightWave - хороший инструмент пространственного моделирования, анимации и рендеринга, первоначально разработанный как приложение к пакету Video Toaster. Последняя версия 5.6 работает на многих платформах. Благодаря исключительно мощным средствам моделирования, возможности анимации персонажей и способности использовать направленные источники света (spotlights) как проекторы изображений и видео как карты текстур эта система доминирует на рынке программ post-production для телевещания.

      LightWave состоит из двух модулей - Modeler и Layout. Вы строите объекты в Modeler, сохраняете их, затем загружаете в Layout, где их можно анимировать. Эта программа построена на основе ключевых кадров и включает в себя много возможностей, таких, как инверсная кинематика, морфинг и MetaNurbs, что делает создание и анимацию персонажей одной из сильных сторон LightWave.
      Первоначально LightWave работала на компьютерах Amiga (и была первой программой 3D-графики, перенесенной на NT), но сегодня она доступна практически на любой платформе. Богатое прошлое ощущается во внешнем виде и уникальной структуре экрана программы. И хотя экран может показаться неудобным тем, кто переходит на LightWave с других программ 3D-графики, рендеринг в этой программе заслуживает самых высоких оценок.
      Несмотря на то, что LightWave позволяет выводить анимацию в виде фильмов QuickTime, вы не можете использовать файлы .mov как карты текстур. Чтобы добиться нужного результата, надо сначала конвертировать видео в ряд файлов Targa. Изображения и последовательности изображений для использования в качестве текстур или фона загружаются в LightWave через панель Image Panel, на которой можно задать параметры воспроизведения.
      LightWave 3D - один из двух продуктов нашего обзора, который умеет справляться с чересстрочностью в импортируемом видео. Кнопка Interlaced на панели Image Panel позволяет рассматривать последовательность изображений из видео с чересстрочной разверткой как отдельные поля при применении их к анимации, которая использует рендеринг по полям.
      Через Image Panel можно задавать последовательность циклического воспроизведения, ее начальный кадр и длину цикла. Диалоговое окно Frame Offset позволяет определять, с какого кадра начинать последовательность, а Sequence Loop Length - сколько кадров надо показывать в цикле. В отличие от остальных программ нашего обзора, в LightWave отсутствует возможность задавать скорость воспроизведения.
      Как и другие программы, LightWave позволяет проводить при выводе рендеринг по полям и обращать при необходимости их порядок, хотя и не сообщает, какое поле выводится при этом первым. Эффекты бликов объектива (lens flares) в LightWave 3D, физически точное воспроизведение глубины резкости, размазывание по движению с учетом времени, а также богатый выбор объективов камер (для воспроизведения эффектов, создаваемых ими) весьма полезны для интеграции трехмерных объектов с видео.
      LightWave использует отображение фронтальной проекции (front-projection mapping) для бесшовного пространственного совмещения с фоном, что позволяет трехмерным объектам взаимодействовать с двумерным фоновым видеоизображением. Кроме того, в некоторых ситуациях полезна поддержка внешних модулей plug-in для Photoshop. Однако отсутствие поддержки звука делает синхронизацию действий персонажей с существующей звуковой дорожкой проблематичной, как и вывод готового видео со звуком.
      Когда мы заканчивали подготовку этого обзора, фирма NewTek объявила о выпуске Frame Factory - аппаратно-программного комплекса ценой $3995 из платы ввода/вывода видео ITU-R-601 и программ LightWave 3D и Aura. Он предназначен для захвата единых потоков видео в формате D-1 и ускорения видеовозможностей LightWave 3D и Aura, программы видеографики, анимации и ротоскопии фирмы NewTek.
      В целом LightWave предлагает много возможностей интеграции 3D-графики и видео. Ее возможность проецировать изображения и видео, исходящий из источников света уникальна, а функции моделирования MetaNURBS делают очень удобным создание персонажей. Мне кажется, что рабочая парадигма программы сложнее для освоения, чем у других программ нашего обзора, но я видел несколько великолепных работ, сделанных в LightWave. Эта программа остается в арсенале многих профессионалов анимации.

Infini-D v4.5

MetaCreations, $899

      Infini-D за годы своего существования развилась в весьма богатый возможностями пакет моделирования, анимации и рендеринга. Версия 4.5 - далекий потомок самой ранней версии, с которой я начал работу с 3D-графики (давным-давно, когда у меня была очень быстрая машина - MacII FX). Дополненная новыми разнообразными возможностями, эта программа остается вполне профессиональной.

      "Максимальные 3D-возможности для профессионалов видео" - гласит подзаголовок на коробке Infini-D, так что фирма MetaCreations явно нацеливает свой продукт на профессиональный рынок видео. И в самом деле, многие новые и усовершенствованные возможности Infini-D рассчитаны именно на профессионалов.
      Infini-D предлагает инструменты моделирования с возможностями рисования сплайнов Безье, деформации, импорт файлов EPS, богатые средства редактирования сеток (mesh), скосы (bevels) и многое другое. Программа может поддерживать несколько камер, системы частиц с обнаружением столкновений, отображение текстур UV и UVW, встроенные процедурные текстуры и бесчисленные прочие возможности для профессионалов. Будучи знаком с первой версией этой программы, я удивился, как далеко она продвинулась, в особенности в области видео, которую мы сейчас и рассматриваем.
      Что касается отображения видео в качестве текстуры объекта, Infini-D обеспечивает лучшие возможности управления по сравнению с большинством пакетов нашего обзора. Сам фильм воспроизводится в диалоговом окне, и вы можете наглядно задавать моменты начала, конца, начальный и конечный кадры. Кроме того, Infini-D - одна из немногих программ, которые позволяют указывать конкретный кадр в анимации, с которого надо начинать воспроизведение.
      Я столкнулся с некоторыми трудностями при попытке накладывать карты на модели, импортированные из других программ. Так, я не смог точно наложить фильм QuickTime на объект 4:3, импортированный в форме файла .dxf. Все стало гораздо лучше, когда я в другой программе преобразовал этот файл в формат .obj и импортировал его снова. Как и можно было полагать, работники технической поддержки сказали нам, что программа лучше справляется с объектами, модели которых созданы в ней самой.
      Infini-D поддерживает вывод по полям. При рендеринге тестов создавались очень большие временные файлы. Скорее всего, так и должно быть со структурой очереди рендеринга Infini-D и возможностями распределенного рендеринга (только Mac). Тем не менее освободите побольше места на диске, если собираетесь выводить анимацию с большим количеством видеотекстур. Еще одна уникальная возможность Infini-D - кнопка Broadcast Safe на экране рендеринга, предназначенная для сохранения заданных вами цветов.
      Infini-D предлагает впечатляющие средства для комбинирования элементов пространственной анимации с отснятым видео, позволяет загружать видео в качестве фона, импортировать и просматривать аудиофайлы. Не хватает имитации глубины резкости, в программе почти нет возможностей поддержки многопроходного рендеринга. Исключение - Shadow Catching, возможность, которая позволяет захватывать информацию о тенях объектов и помещать ее в альфа-канал для последующего композитинга.
      Infini-D - самая дешевая в нашем обзоре программа, но в ней имеются возможности, которых нет в гораздо более дорогих системах. Это производит впечатление еще и потому, что раньше Infini-D называли "программой среднего уровня, которая не рассчитана на конкуренцию с большими пакетами". Я бы сказал, что в области видео проделанная работа позволяет не отставать от крупных игроков.

3D Studio MAX R2.5

Kinetix, $3495

      MAX - мощный пакет 3D-графики. Модули plug-in и другие продукты независимых разработчиков помогают MAX объединять анимацию с видео.

      3D Studio MAX - один из двух лидеров в области работы с видео. Это не удивительно, поскольку это самая дорогая из тестируемых программ. Во всех случаях, когда сам MAX не мог справиться с задачей, находился бесплатный или условно-бесплатный модуль, идеально подходящий для этой цели.
      MAX доказал также, что обладает самыми богатыми возможностями моделирования и анимации. Для создания объектов можно использовать сетки полигонов, кривые Безье, частицы и NURBS-поверхности. Когда объект помещен на место, к нему можно применить ряд модификаторов, которые, не разрушая объект, приводят его форму к требуемому виду. Эти модификаторы сохраняют следы своей работы в стеке, и в любое время их можно редактировать. Пример, как это можно использовать, - изгибание и скручивание цилиндра. Даже после того, как операция выполнена, можно вернуться назад и увеличить число полигонов, "разбив" исходные на несколько частей (tesselate), чтобы добиться большей гладкости. Когда вы получили нужную форму, можно свернуть стек, чтобы упростить сцену и уменьшить нагрузку на процессор. MAX дает вам доступ к вершинам и позволяет входить в режим подобъектов для тонкого редактирования.
      Все операции, даже над вершинами, можно анимировать. Для этого можно как просто перейти к требуемому кадру и настроить объект, так и воспользоваться сложными операциями инверсной кинематики, которые задаются при помощи функциональных кривых или математических выражений в окне Track View. Этот вид проекта напоминает редактор ключевых кадров (dope sheet) - в нем выводятся все ключевые кадры каждого анимируемого параметра. MAX предлагает набор фильтров, которые иной раз помогают привести ошеломляющее количество информации в удобоваримую форму.
      MAX умеет обмениваться файлами практически с любой программой, поддерживаются все обычные параметры ввода и вывода. Файл любого поддерживаемого типа можно использовать как текстуру или как фон. Если в качестве фона используется файл типа .avi со звуком, этот же файл можно загрузить на звуковую дорожку в иерархии Track View. Это могучий метод синхронизации изображения с речью - видеосъемку артиста, произносящего фразы, можно прямо сравнивать с анимируемым персонажем.
      В программе легко работать с текстурами. Можно назначить определенному объекту или уровню (face level) координаты UV. Для объекта может быть задано несколько наборов координат, причем можно смешивать два канала, создавая гладкие переходы между картами. MAX поддерживает плоскостные (planar), сферические, цилиндрические и кубические (box) методы отображения сеток и заплаток (patches), а также полную UV-параметризацию объектов NURBS. Материалы в программе могут быть анимированы, и для каждого материала поддерживается 12 типов карт. Для отражающих и преломляющих материалов можно применять избирательную трассировку лучей. В MAX входит материал под названием Matte/Shadow, который пригоден для построения теней у прозрачных объектов, с полной передачей заднего фона (что идеально подходит для маскирования зеленого экрана). Конечно, бывают случаи, когда вы специально хотите, чтобы видеоматериал выглядел неидеально. Например, если ваш персонаж смотрит телевизор, вы можете сделать так, чтобы карта текстур воспроизводила чересстрочность. Бесплатный plug-in Video Post для MAX фирмы Digimation (www.digimation.com) под названием Boobtube позволит вам придать видео требуемый вид.
      В MAX большие возможности регулировки освещения, благодаря чему можно вытянуть (или безнадежно испортить) сцену. Мягкие тени от осветительных приборов, выбор любого направления от точечного источника и убывание освещенности по закону обратного квадрата позволяют добавить реализма в изображение. Поддерживаются световые пятна, точечные источники и прямое освещение (параллельные лучи от плоского источника, например солнечный свет).
      В модуле Video Post вы работаете с изображением после рендеринга, добавляя эффекты (типа отблесков [glows] или размытия из-за глубины резкости), выполняя композитинг и синхронизацию. Можно попытаться использовать Video Post для полного завершения работ над проектом. Действительно, он выглядит как система видеомонтажа с тайм-линией. Если вы работаете с базовой анимацией и делаете всего несколько дополнительных операций, это поможет сэкономить время. Но для профессиональной работы лучше выбрать правильный инструмент: использовать MAX для вывода последовательных файлов Targa или .rla для пакета композитинга, такого, как Premiere или After Effects.
      И наконец, еще один plug-in под названием Bitmap Field (www.enthed.se) позволит вам импортировать видео с чересстрочной разверткой, разделить поля и правильно выровнять их. Такая возможность действительно выделяет MAX из пакетов нашего обзора.


      1 NTSC содержит информацию, состоящую из 60 полей в секунду, которая формирует кадры с частотой 29,97 кадра/с; принятый в Европе стандарт PAL существенно отличается от стандарта NTSC, как по частоте кадров (25 кадров/с, 50 полей), так и по кодировке цвета и кадровому разрешению (720 х 576). Однако большинство описанных проблем и способов их решения, справедливо при работе с обоими форматами. - Здесь и далее прим. Олега Елкина.
      2 Многие программы более высокого уровня прекрасно "переворачивают" поля, так называемые Odd Fields или Even Fields. Возможны также варианты "удаления" полей с использованием наиболее распространенных процедур (в обычном случае стандартных) - Fields Duplication или Fields Interpolation. "Головная боль" остается и будет расти в том случае, когда на компьютерном мониторе вы видите нормальное движение, а на экране телевизора - сплошные рывки в изображении. Получается это, когда вы просто перепутали поля. Каждая программа делает обработку видеополей по-своему, и иногда неплохо заглянуть в user guide. А если вы нормальный (т. е. официальный) пользователь, то вы всегда можете обратиться к technical support в Internet (обычно с паролем). Там можно найти ответы на многие вопросы и даже связаться с самими разработчиками.
      3 Во многих программах этот параметр aspect ratio можно поставить "от руки" - хоть 9:16!
      4 По опыту работы с совмещением 3D и видео можно сказать следущее: редко, когда сцена в 3D и видео в конечном варианте делаются на одном программном обеспечении. Например: 3D-модели, подготовленные в Softimage|3D, потом легко совместить с видео (притом с любой скоростью) в discreet logic edit*.
      5 Не проще ли потратить полторы-две тысячи долларов на покупку более или менее стоящей того программы обработки видео, чем пытаться "растянуть" видео как текстуру на каком-нибудь 3D-объекте. Хорошо, если трехмерный объект - простой куб, где "фронтальное" наложение видео на его поверхность происходит без каких-либо артефактов. А если наш объект построен на основе metaball или metaclay? Представьте себе в пространстве несколько "капель" из жидкого металла, которые дрожат, как мыльные пузыри на ветру. Наложите на них "необработанную" текстуру и попробуйте повернуть на 180° в том же пространстве. На "склейке" текстуры вы увидите "грязь".
      6 Стандартный подход начинающих аниматоров: "Где бы найти кнопку, при нажатии которой все сделается быстро, просто и, само собой разумеется, в реальном времени". В программах, рассматриваемых в статье, таких кнопок нет и не будет. Нечто похожее можно увидеть в программах, которые стоят от $30 тыс., работающих на аппаратных платформах ценой от $50 тыс.!
      7 Опять сталкиваемся с ситуацией, когда невозможно решить все вопросы в какой-то одной программе. Замечу, что альянс компаний AUTODESK (отделение KINETIX - 3D Studio MAX) и discreet logic* позволяют решать многие проблемы совместимости 3D-графики и видео. AUTODESK - достаточно хорошо реализует 3D-технологии, а discreet logic* - лидер в области нелинейного видео- и киномонтажа, включая область специальных эффектов. Для примера - посмотрите еще раз фильмы "День Независимости", "Армагеддон", "Столкновение с Бездной".
      8 В данном случае автор, скорее всего, столкнулся с моделями, построенными с применением технологий "склеивания" элементарных объектов с неограниченным числом точек поверхности, т. е. metaclay или metaball, или с моделями, представленными не как полигональные, а как сплайновые.
      9 Популярные бейсбольные команды. - Прим. перев.
      10 Для NTSC - с 30 на 60 кадров/с, для PAL - с 25 на 50.


      Редакция выражает благодарность Олегу Елкину, сотруднику компании Qualitron, взявшему на себя труд прокомментировать статью с точки зрения применимости описанных в ней приемов для видеостандарта PAL.