Основы компьютерной графики
Если вам уже приходилось работать с такой программой, как Photoshop, вы, скорее всего, уже знакомы с терминологией и общими методами компьютерной графики. Однако эти термины являются настолько важными для дальнейшей работы, что мы считаем своим долгом сделать их краткий обзор.
Векторы и пикселы
Существует два основных способа создания компьютерной графики — векторы и пикселы. В первом случае для каждой фиксированной точки изображения имеется линия, соединяющая ее со следующей точкой. Путем создания нескольких таких линий можно очертить замкнутую область и затем залить ее выбранным цветом. Второе название этого подхода — штриховой рисунок (line art). Так как опорные точки и линии имеют абсолютные координаты, можно создавать рисунки любого масштаба, не теряя при этом качества. Этот подход замечательно подходит для четкой графики, например для логотипов, и используется такими программами, как CorelDraw и Illustrator.
Во втором случае для создания изображения применяются прямоугольные точки, называемые пикселами. Они являются структурными единицами растрового изображения. Пикселы могут быть окрашены в любой цвет. Рассмотрение их набора с некоторого расстояния создает впечатление обычного изображения или фотографии. Чем больше пикселов, тем более детальным получается изображение, если его абсолютные размеры при печати или показе на экране монитора остаются без изменений. Абсолютный размер изображения, составленного из пикселов, называется разрешением. Если изображение состоит из большого числа пикселов, говорится, что оно имеет высокое разрешение. Например, по ширине 35-мм кадра обычно умещается 2048 пикселов, а по высоте — 1536. В отличие от векторных растровые изображения нельзя масштабировать. При сильном увеличении растрового изображения можно заметить, что оно состоит из цветных квадратиков. Подобный формат идеально подходит для фотографических изображений. Они обрабатываются с помощью таких программ, как Photoshop и Corel PhotoPaint. Штриховые рисунки очень редко используются в трехмерном моделировании, но большинство программ для работы с такими изображениями позволяет преобразовать их в растровые.
При этом существует возможность выбирать требуемое разрешение.
Обычно файлы, содержащие растровые изображения, намного больше файлов со штриховыми рисунками. Например, цветное изображение с разрешением 640x480, содержит 307 200 пикселов, при этом каждый из них содержит информацию о долях красного, зеленого и синего цветов. Соответственно, размер необработанного файла составляет 921 600 байт. Это было большой проблемой во времена зарождения компьютерной графики, но благодаря техникам сжатия и возросшим мощностям компьютеров этот вопрос решен.
В Maya используется оба типа графических файлов. Может возникнуть ситуация, когда требуется создать логотип на основе штрихового рисунка, написать текст с помощью стандартных шрифтов или импортировать двумерный архитектурный план из программы для черчения, например из AutoCAD. Во всех этих случаях источником данных является векторное изображение. Также можно взять двумерные формы и использовать их в качестве кривых моделирования. Для выполнения этих преобразований вам может понадобиться инструмент, подобный Okino Polytrans, потому что возможности Maya по импорту файлов с векторными изображениями ограничены. Другой популярный у пользователей Maya инструмент для преобразования файлов с векторными изображениями в выдавленные логотипы это Zaxwork's Invigorator. Растровые изображения в Maya используются намного чаще. В основном они накладываются на поверхности способом, похожим на калькирование или наклеивание обоев. Кроме того, результаты визуализации сцен в Maya представляют собой растровые изображения.
Двумерная и трехмерная графика
Легко перепутать двумерную и трехмерную графику, потому что пользователи часто пытаются создать трехмерное изображение, используя исключительно инструменты для работы с двумерными объектами. Когда мы говорим о трехмерной графике, подразумевается виртуальное пространство с координатами X, Y и Z, в любом месте которого могут быть расположены объекты, источники света и камеры. Можно видеть оси X, Y и Z, взятые из геометрии.
На них в Maya указывают вспомогательные объекты, как показано на рис. 1.11.
Какое направление соответствует каждой из букв? Обычно это зависит от опыта пользователя. Если аниматор работает с двумерным экраном, ось X идет слева направо, а ось Y — снизу вверх. При переходе к трехмерному экрану появляется ось Z, добавляя фактор глубины. Она может быть направлена как на зрителя, так и от него. Однако для пользователя CAD направление осей будет Основы компьютерной графики ч»
совершенно другим. Оси в CAD все время направлены вниз на координатные плоскости. Соответственно, оси X и Y являются индикаторами направлений север/юг и восток/запад, в то время как ось Z показывает высоту объекта. В Maya существует возможность менять местами оси Y и Z, что очень полезно при работе со сценами, импортированными из CAD. Это свойство может пригодиться и при импорте данных из других программ для трехмерного моделирования.
Рис. 1.11. Оси координат в Maya показаны в левом нижнем углу, при этом выделенные объекты имеют свои собственные оси
Ввод и вывод информации
В основном создание сцены в Maya начинается с нуля. После окончания работы над ней визуализируются одно или несколько статичных изображений, то есть программа рассчитывает двумерное растровое изображение сцены, наблюдаемое в объектив камеры, учитывая все источники света, объекты и материалы, назначенные этим объектам. Набор статичных изображений используется для создания анимации путем быстрого показа их одно за другим.
Хотя путем визуализации в реальном времени может быть получено изображение достаточно высокого качества, его невозможно сравнить с результатом работы визуализатора (рис. 1.12).
Каждое новое поколение видеокарт увеличивает скорость выполнения визуализации в реальном времени и качество итогового изображения. Но пока еще нет возможности получить хотя бы приблизительно такое же качество, как при использовании стандартного визуализатора. Создатели анимации все время увеличивают количество эффектов, добавляют мягкие тени, объемный свет, глубину резкости и прочие эффекты, негативно сказывающиеся на скорости визуализации.
Качественное изображение в этом случае можно получить только путем стандартной процедуры, хотя визуализация каждого кадра может занимать несколько минут.
Рис. 1.12. Снизу показан результат визуализации в реальном времени, в то время как сверху находится результат стандартной визуализации
Часто пользователю приходится вводить данные в программу и получать их назад. Если требуется наложить на поверхность изображение, то его нужно сначала загрузить. Каждый раз, при визуализации сцены, которую вы собираетесь использовать в дальнейшем, нужно сохранять полученный результат в файле. Можно вводить в сцену объекты реального мира, используя для этого сканирование, а также создавать реальные физические объекты на основе трехмерных объектов, смоделированных в Maya.
3D-сканеры
Разве не прекрасно было бы иметь возможность отсканировать трехмерную модель автомобиля, вместо того чтобы вручную кропотливо моделировать каждую из его частей? На самом деле существует ряд технологий, с помощью которых подобные задачи вполне выполнимы, но они имеют отрицательные стороны. Самым быстрым, но и самым дорогим методом является лазерное сканирование. Его стоимость колеблется от нескольких тысяч до нескольких сот тысяч долларов. При сканировании некоторой области объекта формируется массив данных. После этого результаты множественного сканирования остается соединить друг с Другом, и внешняя поверхность объекта будет готова. Массив данных имеет очень большую плотность, так что в результате пы получите огромную сетку, требующую слишком длительного редактирования. Потому данный метод вряд ли можно использовать для трехмерного моделирования.
Устройство перьевого ввода для получения информации о форме объекта использует указатель. Такие устройства дешевле лазерных сканеров, но для получения детальной картинки нужно аккуратно снять тысячи точек. В этом случае редактировать объект приходится намного меньше, но сам процесс взятия пробы с 10 000 точек модели занимает массу времени. Также проблемой является погрешность получения данных, в результате которой вместо совершенно гладкой поверхности автомобиля вы получите вмятины и выступающие части.
3D-принтеры
Еще более изумительная технология позволяет получить физический объект из трехмерной модели. Лидирующие позиции занимает технология, называемая лазерной агломерацией (laser sintering) — это уплотнение при помощи лазерного луча засвеченных участков в фоточувствительной вязкой жидкости янтарного цвета. Небольшая платформа в жидкости вместе с частично созданным объектом медленно опускается после каждого прохода лазера, чтобы создать следующий слой заготовки. В результате получается модель вашего объекта, сделанная из янтарного полимера.
Такие устройства стоят десятки тысяч долларов и в основном находятся во владении специальных бюро обслуживания. Стоимость изготовления объекта зависит от его размера и сложности модели. Кроме того, это очень медленная процедура, создание большого объекта может занять несколько дней.
Форматы файлов изображений
Обычно результатом работы в Maya является двумерное изображение. Его можно сохранить в одном из предлагаемых программой форматов. Соответственно, для выбора подходящего формата нужно представлять себе свойства каждого из них. Сохранение в некоторых форматах приводит к потере части изображения, и вы можете быть разочарованы, увидев, во что превратилась картинка, выглядевшая так безупречно после визуализации. Вот форматы файлов, доступные в Maya:
Этот формат соответствует 16 миллионам цветов на пиксел.
Существует несколько способов сжатия изображения. Некоторые из них сопровождаются ухудшением его качества. Используя сжатие без потерь, вы умень-аете размер файла, сводя к минимуму избыточные данные. При этом изображение всегда сохраняет исходное качество.
Изображение, созданное в Maya, может быть снабжено альфа-каналом. Это дополнительный атрибут каждого пиксела, содержащий информацию о прозрачности. Например, если вы визуализировали изображение персонажа в Maya и за-м заставили его двигаться на фоне реального пейзажа, снятого на видеопленку, вручную будет очень сложно вырезать его из каждого кадра, в то время как ьфа-канал позволяет мгновенно вырезать фигуру по маске.
Рассмотрим характеристики некоторых форматов изображения, доступных в Maya:
При сохранении результата визуализации в этом формате появляется растровое изображение с расширением EPS. To есть увеличение масштаба такого изображения приводит к разбиению картинки на пикселы.
п. Самые новые варианты формата TIFF иногда используют алгоритм сжатия без потери качества LZH. При импорте файла в этом формате в Maya может возникнуть ситуация, когда он просто не читается. В этом случае нужно преобразовать его с помощью Photoshop или любой другой программы для редактирования изображений. При желании можно добавить к изображению альфа-канал.
Использование форматов анимации для последующего вывода результата на видео — не очень хорошая идея, потому что они часто используют сжатие с потерей качества. Лучше всего сохранять анимацию в виде набора последовательных изображений в форматах TIFF или TGA. Впоследствии эти изображения загружаются в специальное устройство, которое показывает их в виде фильма.