CG-академия

Этот статьей мы начинаем цикл, посвященный удивительному и волшебному миру компьютерной графики. Кому из вас не хотелось взглянуть хоть одним глазком на то, как делались "Тачки", "Гарри Поттер" и "Кинг Конг"? Однако профессионалы не спешат раскрывать секретов, и даже на фирменных DVD можно найти в лучшем случае туманные объяснения сценаристов, аниматоров и специалистов по спецэффектам о том, как им удается делать такие поразительные сцены. В статьях этого цикла мы не только расскажем, как создаются спецэффекты, но и научим вас делать их. Но сначала немного истории и теории.

Когда мы смотрим фильмы или рекламу, мы не задумываемся над тем, как это сделано. Зритель воспринимает конечный результат работы специалистов по визуальным эффектам как готовый продукт. Если кто-то и задается вопросом, то в большинстве случаев их устраивает ответ: "Сделано на компьютере". Но что означает эта скупая формулировка? Как в небольшой металлической коробке системного блока рождаются километры виртуальных миров? Секрет создания эффектов в фильмах и рекламе спрятан за аббревиатурой 3D. 3D — это сокращение от английского third dimension (третье измерение), которым принято обозначать трехмерную графику. Несмотря на то, что трехмерная компьютерная графика появилась сравнительно недавно, попытки воссоздавать на фотографиях, картинах и кинопленке трехмерный мир предпринимались достаточно давно, задолго до появления компьютеров. Человеческое зрение устроено таким образом, что человек видит два независимых изображения, которые позволяют воспринимать мир в трех измерениях. Именно благодаря этому мы можем видеть объемные предметы и определять, насколько они смещены в пространстве относительно друг друга и удалены от зрителя. Когда-то давно для имитации трехмерных изображений использовалось нехитрое устройство, именуемое стереоскопом. Оно имело прорези для обоих глаз, через которые зритель рассматривал две картинки, помещенные рядом (рис. 1).
Такие изображения были получены одновременно, но точка съемки немного отличалась. В результате, когда человек через стереоскоп смотрел на одну картинку одним глазом, а на другую — вторым, ему казалось, что он видит трехмерное изображение (рис. 2). В начале ХХ века появились первые стереоскопические фотоаппараты, в которых было два объектива, расположенных на расстоянии 65 мм друг от друга, что равняется среднему расстоянию между зрачками глаз. Такие фотоаппараты давали возможность без проблем получать стереоизображения. Примерно в то же время была запатентована технология, позволяющая использовать стереоскоп для показа трехмерных фильмов. В этом случае вместо статических изображений использовалось две кинопленки, изображения на которых были получены в результате одновременной съемки одних и тех же объектов с разных точек. Чтобы достичь стереоэффекта при воспроизведении, оператор должен был следить за тем, чтобы воспроизведение на обоих проекторах происходило синхронно и чтобы они имели идентичные технические характеристики.
В начале 50-х годов в Америке были очень популярны фильмы, для просмотра которых использовались поляризованные стереоочки с синими и красными стеклами (рис. 3). Эффект достигался следующим образом: два изображения проецировались на экран через ортогональный поляризационный фильтр, накладываясь друг на друга. В результате зритель, надевший очки с такими же фильтрами, видел каждым глазом только тот спектр, который проходил через соответствующий фильтр, за счет чего и достигался эффект стереоскопии.

С появлением компьютеров появилась возможность создания настоящих трехмерных эффектов. Первооткрывателем в этой области был один из самых известных людей в мировом кинематографе — Джордж Лукас (рис. 4). Именно его фильмы "Звездные войны" прославились наличием невиданных на то время спецэффектов. В 1975 году Лукас основал собственную компанию Industrial Light and Magic (ILM), которая занималась разработкой этих спецэффектов. Немного позже в рамках этой компании было основано подразделение LucasFilm CG, то есть LucasFilm Computer Graphics. Именно это отделение начало активно развивать компьютерную графику, и именно оно создало первый анимационный CG-фильм "Приключения Андре и пчелы Уолли". Этот фильм отличался от эффектов, которые создавались ранее, тем, что был полностью создан при помощи компьютера. Сейчас в это трудно поверить, но для того, чтобы создать полутораминутную анимацию, были задействованы мощности шести суперкомпьютеров, а на выставке компьютерной графики SIGGRAPH- 84 анимация произвела фурор (рис. 5).
После первого успеха отделение LucasFilm CG продолжало работать над совершенствованием средств создания компьютерной графики. Уже в 1985 году в фильме "Молодой Шерлок Холмс" появился первый персонаж, созданный при помощи компьютера. В 1986 году отделение LucasFilm CG было продано Стиву Джобсу, известному ныне как глава компании Apple, и стало независимой компанией. Ее название сегодня известно во всем мире — LucasFilm CG превратилось в Pixar. Студия Pixar занималась (и до сих пор занимается) не только созданием CG-анимации, но и разработкой различных технологий, которые упрощают работу с компьютерной графикой. Например, в 1986 году студия создала графический компьютер Pixar Image Computer, который мог выводить на экран изображение с разрешением 1280х1024 пикселей в цвете и 2048х2048 пикселей в черно-белом режиме. Позже Pixar разработала средство для визуализации компьютерной анимации RenderMan, который до сих пор считается самым лучшим. Что же касается анимационных проектов студии, то создаваемые ею фильмы имеют неизменный успех, и по ним легко проследить развитие компьютерной графики. Если в восьмидесятых годах Pixar создавала только короткометражные фильмы и рекламные ролики, то уже в 1995 был представлен первый
полнометражный компьютерный мультфильм "История игрушек" (рис. 6). В 2001 году, с выходом фильма "Корпорация монстров", зрители впервые увидели героев с реалистичной шерстью, а в выпущенном в том же году студией DreamWorks "Шреке" — огромные леса с детальной прорисовкой деревьев и даже листьев на них. Сегодня созданием полнометражных анимационных фильмов занимаются не только студии Pixar и DreamWorks, но и многие другие известные компании, в том числе Warner Bros. и Sony, а потому такие фильмы выходят один за другим. Уже никого не удивляют и полнометражные CG- фильмы, где трехмерные герои "играют" вместо настоящих актеров.

Компьютерная графика нашла применение и во многих других областях, которые далеки от кинематографа. Например, с ее помощью моделируются фотореалистичные здания и интерьеры, которые в реальности существуют только в виде проектов. Она также помогает медикам исследовать разные части человеческого организма, археологам — воссоздавать на компьютере предметы, которыми пользовались наши предки, и даже древние города, в которых они жили. Кроме этого, компьютерная графика широко используется в сфере развлечений, ведь с ее помощью создаются все современные компьютерные игры. Благодаря тому, что за последние 20 лет было изобретено множество технологий, упрощающих создание компьютерной графики, и тому, что мощности компьютеров за это время возросли во много раз, создание фильмов и спецэффектов больше не является уделом одних лишь профессионалов. Для того, чтобы создать полутораминутную анимацию типа "Приключений Андре и пчелы Уолли", сегодня не нужно иметь в своем распоряжении большую команду профессиональных аниматоров и мощнейшие суперкомпьютеры. Подобный проект под силу выполнить даже одному человеку на домашнем ПК. Мы подошли к самому интересному вопросу: как же это делается? Для создания компьютерной графики используются специальные программы, которые называются 3D-редакторами. Они предоставляют в распоряжение пользователя трехмерное пространство, в котором можно создавать, перемещать и вращать 3D-объекты. Кроме этого, в современных 3D-редакторах имеется набор специальных инструментов, которые заставляют объекты самостоятельно двигаться, то есть создают на их основе анимацию. Трехмерная графика — это что-то среднее между компьютерной игрой и съемкой настоящего фильма. Окно 3D-редактора — это окно в виртуальный мир, который является вашей съемочной площадкой. И только вам решать, какой фильм вы будете снимать, с какими актерами и декорациями. Работа по созданию трехмерного проекта, как и работа над созданием реального фильма, делится на несколько обязательных и последовательных этапов. Они одинаковы независимо от того, в каком 3D-редакторе создается проект и что это за проект: полнометражный фильм или короткий рекламный ролик. Трехмерный проект часто называют сценой. Во время съемок реального фильма режиссеры сначала подбирают актеров и решают, где именно будут происходить съемки, а в случае необходимости создают декорации. Затем на месте съемки устанавливаются камеры и осветительные приборы, актеров гримируют и, наконец, производят съемку. Поскольку с первого раза достичь наилучшего результата практически невозможно, в большинстве случаев режиссеры снимают одну и ту же сцену несколько раз. В своей работе 3D-художники повторяют те же этапы. Они делают декорации для своей виртуальной съемочной площадки, создают актеров — трехмерных персонажей, заставляют их двигаться и разговаривать, устанавливают освещение и выбирают точку съемки. Что же касается грима, то 3D-художникам в этом отношении гораздо сложнее, чем настоящим режиссерам, поскольку им приходится не только "накладывать грим" на актеров, но и раскрашивать все предметы своего виртуального мира, делая их похожими на настоящие.

Моделирование

В трехмерном пространстве не существует никаких предметов. Виртуальный мир наполняется разными объектами, которые создает пользователь в 3D- редакторе. Это относится к трехмерным персонажам, зданиям, горам, лесам и любым другим вещам, наполняющим виртуальный мир. Процесс создания трехмерных объектов называется моделированием, а сами объекты — моделями. В отличие от рисованого изображения, трехмерную модель можно вращать и перемещать в трех измерениях, глядя на нее со всех сторон. В зависимости от того, какой именно объект нужно создать, на его моделирование может уйти от нескольких секунд до нескольких месяцев. Например, сделать шкаф можно за пару минут, а создание человеческой головы может занять не один день. Существует множество разных способов моделирования, с которыми вы познакомитесь в следующих статьях.

Анимация

В отличие от моделирования, анимация не является обязательным этапом создания трехмерных проектов. Например, если дизайнер работает над проектом интерьера квартиры, ему не нужно заставлять объекты двигаться, поскольку для такого проекта важно показать внешний вид и размещение предметов в помещении. Если же работа идет над рекламным роликом или же каким-нибудь эффектом наподобие взрыва, без анимации никак не обойтись. Анимация подразумевает изменение размещения объектов, которые присутствуют в трехмерном пространстве, во времени. Например, если требуется сделать анимацию падающего карточного домика, положение карт в первом кадре будет отличаться от их размещения во втором и последующих кадрах. Таким образом, в процессе создания анимации 3D-художнику необходимо выполнить размещение уже созданных им объектов в каждом кадре.

Съемка

Во время просмотра фильма или телепередачи вы можете заметить, что режиссер часто изменяет точку съемки. Например, в начале трансляции футбольного матча часто показывают вид стадиона с высоты птичьего полета, затем основное внимание сосредоточено на игроках на поле и тренерах. А теперь представьте себе, как было бы неинтересно смотреть матч, если бы вам показывали его с одной-единственной точки, не изменяя положение камеры и не применяя другие камеры, расположенные в разных местах стадиона. Конечный продукт трехмерной анимации, по сути, является тем же отснятым видео, которое может "сниматься" с разных точек. Например, тот же карточный домик можно показать издалека, чтобы он был виден целиком, а можно приблизить, чтобы была видна только его часть. Одним словом, выбор точки съемки в трехмерной анимации не менее важен, чем в настоящем кино или на телевидении. Для съемки анимации, созданной в 3D-редакторе, используются виртуальные камеры. Как и реальные прототипы, виртуальные камеры можно перемещать, а также переключаться между ними в процессе анимации. Например, первые 50 кадров анимации можно наблюдать через первую камеру, а затем переключаться на вид из второй. Виртуальные камеры обладают теми же свойствами, что и настоящие: они могут фиксировать картинку под разным углом зрения, имитировать эффект глубины резкости и т.д. 3D-художник, работающий над анимационным проектом, должен уметь правильно подобрать расположение камер, чтобы точка съемки была наиболее удачной, и продумать, как они будут перемещаться в процессе анимации.

Освещение

Вы никогда не задумывались над тем, что проводите большую часть своей жизни при свете? Благодаря свету вы можете различать окружающие вас предметы. Лучи света, исходящие от многочисленных источников, начиная от Солнца и заканчивая электрическими лампочками, многократно преломляются и отражаются от различных поверхностей, что дает нам картину окружающего нас мира. Виртуальное пространство, в котором работают 3D-художники, в отличие от реального мира, не имеет никаких источников освещения. Поэтому, чтобы увидеть, что происходит в виртуальном мире, его нужно осветить. Для имитации освещения в трехмерной графике используются специальные объекты, которые так и называются — источники света. Для того, чтобы освещение 3D-объектов было похоже на настоящее, приходится учитывать множество факторов: где расположен источник света, с какой силой он светит, от каких предметов отражается и многое другое.

Текстурирование

Все предметы, с которыми мы имеем дело в реальной жизни, отличаются друг от друга по внешнему виду. Поскольку мы точно знаем, как должны выглядеть предметы, созданные из разных материалов, мы можем безошибочно отличить золото от стали, стекло — от фарфора, воду — от молока и т.д. Объекты, созданные в трехмерном пространстве, на этапе моделирования отличаются друг от друга только по форме. Чтобы 3D-модель напоминала реальный предмет, недостаточно точно повторить его форму, нужно еще и раскрасить ее соответствующим образом. Процесс раскраски трехмерных объектов называется текстурированием. Это слово происходит от термина "текстура", которым обозначается рисунок, накладываемый на 3D-модель. Само слово "текстура" в общем смысле имеет несколько другое значение и обозначает особенности строения твердого вещества, обусловленные характером расположения его составных частей. В трехмерной графике текстурой может служить как фотография реального объекта, наложенная на 3D-модель, так и двухмерный рисунок, созданный в программе типа Adobe Photoshop. Существуют и другие типы текстур, о которых вы узнаете в следующих статьях. С одной стороны, необходимость раскраски всех объектов виртуального мира — сложное и хлопотное занятие. С другой стороны, это дает неограниченные возможности для творчества, поскольку вы легко можете раскрашивать предметы так, как они никогда не могут выглядеть в реальности — например, на объект, повторяющий форму чайника, наложить текстуру клубники и т.д.

Визуализация

Последовательность выполнения предыдущих этапов создания трехмерного проекта может быть различной. Однако визуализация всегда является последним, завершающим, этапом работы над проектом. Можно сказать, что без процесса визуализации работа в 3D-редакторе не имеет никакого смысла, поскольку без него нельзя получить конечный результат. Этап визуализации тесно связан с этапом съемки. Как только вы расставили камеры и подобрали их параметры, вы можете начать снимать виртуальный фильм, то есть визуализировать его. Визуализацию трехмерного проекта можно сравнить со съемкой видеокамерой, однако готовое видео или статическое изображение в этом случае записывается не на кассету, а в файл. Визуализацию также называют рендерингом, или просчетом.

Продолжение следует

Сергей и Марина Бондаренко


Компьютерная газета. Статья была опубликована в номере 36 за 2007 год в рубрике soft

©1997-2024 Компьютерная газета