История создания Maya
Эта книга написана, чтобы помочь пользователям быстро понять принципы действия инструментов и познакомиться с основными приемами работы с программой. Ни одно из упражнений не начинается с загрузки практически готовой сцены. Мы научим вас самостоятельно создавать объекты с нуля.
Изначально Maya предназначалась для крупных студий. В известной степени это отразилось и на текущей версии программы, хотя в нее не включены примеры сложных сцен, а библиотеки материалов, маркировки меню и клавиатурные комбинации представлены в минимальном объеме.
Для начала посмотрим на историю развития компьютерной графики в целом и программы Maya в частности.
Первые компьютеры появились в 40-х годах XX века, но только недавно они стали использоваться для создания художественных изображений. В 50-х годах идея об использовании технологии для создания визуальных эффектов была реализована путем создания телевизоров, осциллографов и экранов радаров. Первым глобальным шагом в этом направлении была, вероятно, придуманная в 1961 году Иваном Сазерлендом система Sketchpad, положившая начало эре компьютерной графики. С помощью светового пера пользователи могли создавать рисунки непосредственно на поверхности экрана. Векторная графика представляет собой примитивный штриховой рисунок, часто использовавшийся в первых видеоиграх и кино.
В 1967 году Сазерленд начал совместную работу с Дэвидом Эвансом с целью создания учебного курса компьютерной графики, в котором были бы слиты воедино искусство и наука. Университет штата Юта, в котором были начаты эти исследования, заработал хорошую репутацию в области исследования компьютерной графики и привлек людей, которые впоследствии сыграли важную роль в развитии данной отрасли. Среди них были: Джим Кларк – основатель компании Silicon Graphics Inc., Эд Кэтмул – один из первопроходцев в области создания фильмов с помощью компьютера и Джон Вэрнок – основатель компании Adobe Systems и разработчик таких известных продуктов, как Photoshop и Postscript.
Развитие алгоритмов
Пионеры компьютерной графики разработали следующую концепцию: формировать объемное изображение на основе набора геометрических фигур. Обычно для этой цели используются треугольники, реже – сферы или параболоиды. Геометрические фигуры получаются сплошными, и при этом геометрия переднего плана закрывает геометрию заднего плана. Затем подошло время разработки виртуального освещения, благодаря которому на виртуальных объектах появлялись плоские затененные участки, придававшие компьютерным изображениям четкие контуры и несколько техногенный вид.
Генри Гуро предложил усреднять раскраску между углами, чтобы получить более гладкое изображение. Эта форма сглаживания требует минимального объема вычислений и в настоящее время используется большинством видеокарт. Но на момент ее изобретения в 1971 году компьютеры могли визуализировать таким способом только простейшие сцены.
В 1974 году Эд Кэтмул ввел концепцию Z-буфера, суть которой была в том, что изображение может состоять из горизонтальных (X) и вертикальных (Y) элементов, каждый из которых также имеет глубину. Таким способом был ускорен процесс удаления скрытых граней, и теперь этот метод является стандартом для трехмерных ускорителей. Другим изобретением Кэтмула было обертывание двумерного изображения вокруг трехмерной геометрии. Проецирование текстуры на поверхность, является основным способом придания реалистичного вида трехмерному объекту. Изначально объекты были равномерно окрашены в один цвет, так что, например, создание кирпичной стены требовало индивидуального моделирования каждого кирпичика и заливки между ними. В наши дни вы можете создать такую стену, назначив растровое изображение кирпичной стены простому прямоугольному объекту. Этот процесс требует минимального объема вычислений и ресурсов компьютера, не говоря уже о значительном сокращении времени работы.
By Тонг Фонг усовершенствовал принцип сглаживания Гуро путем интерполяции оттенков всей поверхности полигона, а не только областей, прилегающих непосредственно к граням. Хотя визуализация в этом случае происходит раз в сто медленней, чем при предыдущем варианте сглаживания, объекты получают в результате "пластичный" вид, присущий ранней компьютерной анимации. В Maya используются два варианта раскраски по Фонгу.
Джеймс Блинн скомбинировал элементы раскраски по Фонгу и проецирования текстур, создав в 1976 году текстуру рельефа. Если к поверхности было применено сглаживание по Фонгу и можно спроецировать на нее карту текстуры, почему не использовать оттенки серого в соответствии с направлениями нормалей к граням, чтобы создать эффект рельефа? Более светлые оттенки серого воспринимаются, как возвышенности, а более темные – как впадины. Геометрия объекта при этом остается неизменной, и вы можете видеть его силуэт.
Блинн также разработал метод использования карт окружающей среды для формирования отражений. Он предложил создать кубическую среду путем визуализации шести проекций из центра объекта. Полученные таким способом изображения затем проецируются обратно на объект, но с фиксированными координатами, в результате чего картинка не перемещается вместе с объектом. В результате поверхность объекта будет отражать окружающую среду. Для успешной реализации эффекта нужно, чтобы не было быстрого движения объектов окружающей среды в процессе анимации.
В 1980 году Тернер Уиттед предложил новую технику визуализации, называемую трассированием. Это отслеживание путей прохождения отдельных световых лучей от источника света до объектива камеры с учетом их отражения от объектов сцены и преломления в прозрачных средах. Хотя реализация этого метода требует значительного количества ресурсов компьютера, изображение получается очень реалистичным и аккуратным.