Пиксель. История одной точки - Элви Рэй Смит
Шрифт:
Интервал:
Компьютерная графика предполагает геометрию на входе и пиксели на выходе. При обработке изображений получаются пиксели и на входе, и на выходе. И то и другое используется для создания изображений. На заре компьютерной эры, когда память стоила очень дорого, обработка изображений сводилась только к фотосъемке, но теперь, в новом тысячелетии, благодаря закону Мура стало возможным создавать изображения непосредственно из пикселей.
Пары продуктов Adobe и Apple отражают старое разделение Цифрового Света, вызванное окольным путем развития через векторную графику, о котором я упоминал в четвертой главе. В самом начале компьютерной эры программы, основанные на геометрии, разрабатывались для векторных дисплеев, а программы, основанные на пикселях, — для растровых. Сейчас понять такое различие достаточно сложно, потому что со времен Великой цифровой конвергенции оба варианта отображаются в пикселях. Компьютерную графику от обработки изображений отличает содержание ее основанного на геометрии пространства Творчества. Но обе ветви теперь используют одно и то же пространство Отображения.
Существует множество примеров двумерной компьютерной графики. Даже интерфейс Microsoft Windows, который я сейчас использую, — это компьютерная графика. Окна на экране в пространстве Отображения — это прямоугольные модели стопок бумаг на рабочем столе в пространстве Творчества программы. То же самое и с интерфейсом Microsoft Word. Его модель через последовательность прямоугольников представляет страницы документа, а каждая буква на странице в конечном счете определяется геометрической моделью. Дизайн веб-страницы и веб-браузер, который использует такую модель страницы для отображения, — тоже подходящий пример. Геометрия на входе, пиксели на выходе.
Основная цель моей книги — показать, как на компьютере создается фильм, подобный тем, что выпускает студия Pixar. Каждый его кадр моделируется с помощью трехмерной геометрии внутри компьютера, а затем преобразуется в двумерные пиксели для полноцветного отображения. Именно это мы подразумеваем под трехмерной компьютерной графикой, которой посвящена эта книга. Видеоигры создаются таким же образом. И VR тоже — с двумя отображениями каждого кадра (по одному для правого и левого глаза) для создания стереоэффекта.
Сплайн — это кривая, а не поверхность, но теперь мы сосредоточим внимание на моделировании поверхностей. Следующие формы, которые мы рассмотрим, служат этой цели. Первая из них проста и хорошо известна.
Форма треугольника
Что такое треугольник? Я сверился с учебником элементарной геометрии, который бережно храню со времен окончания средней школы в Кловисе, штат Нью-Мексико, — книгой, определившей мое будущее. Она начинается на странице 7 с точек и прямых линий. Эти две идеи действительно нельзя определить через другие — мы просто «знаем», что они собой представляют, — но мы начинаем «понимать» их, лишь подумав, чего им не хватает или чем они не являются: у точки нет ни ширины, ни высоты, ни толщины. Это просто местоположение. Прямая линия не имеет ни ширины, ни толщины и продолжается бесконечно в обоих направлениях одного измерения. Она задается двумя точками. Отрезок прямой — это конечный участок линии, заданный двумя точками, расположенными на ней (для самого отрезка они будут конечными точками). Ломаная линия состоит из отрезков, конец каждого из которых, кроме последнего, соединен с началом другого. Таким образом, у ломаной линии есть две конечные точки.
Удивительно, но в учебнике до 57-й страницы нет ни одного упоминания скромного треугольника. Многоугольник — это замкнутая ломаная линия, говорится там. Конечная точка последнего отрезка соединяется с началом первого отрезка — таким образом, никаких конечных точек. Ну и, наконец, треугольник — это многоугольник, у которого всего три стороны. Все эти геометрические фигуры невидимы — в силу нулевой толщины линий, — но в учебнике сказано, что точка представлена точкой на картинке. Весь этот урок геометрии показан на рисунке 6.8. Здесь вы видите визуализации пяти невидимых геометрических объектов, о которых я только что упомянул. Перед вами конкретные изображения простых абстрактных геометрических моделей.
Преимущество столь длинного пути учебника к треугольнику в том, что так вводится важный термин. Многоугольник, или полигон, — одно из самых любимых слов в компьютерной графике. Общий ее подход заключается в описании вымышленного мира с помощью полигонов. Но мы сразу избавим себя от необходимости использовать слово «многоугольник» с помощью фундаментального факта: любой многоугольник можно разделить на треугольники. Выберите любой угол или вершину многоугольника и проведите от него линии ко всем остальным углам или вершинам. Так что мы можем всегда говорить только о треугольниках. На рисунке 6.9 показаны два различных способа преобразования четырехстороннего многоугольника в два треугольника одной пунктирной линией. Для пятистороннего многоугольника потребуются две таких линии и так далее. (См. комментарии на сайте по поводу подробностей и исключений.)
Благодаря этому трюку мы можем сосредоточиться только на моделях, состоящих из треугольников. Однако не каждую модель получится изготовить из треугольников. Геометрическая модель кривой, которую я показывал Рави Шанкару, — это просто сплайн, а не многоугольник. Текст на первой цифровой картинке «Первый Свет» и игровые поля ранних видеоигр в главе «Восход Цифрового Света» также основывались на простых моделях, несводимых к треугольникам. Они, за немногими исключениями, представляли собой просто отрезки прямой линии.
Но вспомните анимационные фильмы Pixar (от «Истории игрушек» до «Суперсемейки 2»), «Гадкий я» студии Illumination и все другие анимационные фильмы с трехмерными персонажами, похожие на те, что делает Pixar. Все персонажи состоят из поверхностей, а поверхности можно моделировать только из треугольников.
Если мы научимся работать с одним треугольником, то Усиление — великая суперспособность компьютеров — позаботится обо всех остальных (обычно речь идет о миллионах треугольников). Центральная идея этой и следующей глав заключается в том, что если вы разберетесь, как один треугольник попадает из памяти компьютера на экран дисплея, то с помощью концепции Усиления легко поймете, как на экране оказывается все изображение. Именно компьютер, неустанно вычисляющий одно и то же снова и снова, миллионы и даже миллиарды раз, с высокой скоростью, делает возможной компьютерную графику. Это трудно сделать — а для человека без посторонней помощи и вовсе невозможно, — но легко понять.
Рис. 6.8
Рис. 6.9
Классический чайник
На протяжении десятилетий компьютерные художники демонстрировали свои достижения, создавая изображения одного объекта… Чайника. На самом деле именно этот чайник даже стоит на почетном месте в Музее компьютерной истории (рис. 6.10). Он принадлежал англичанину Мартину Ньюэллу, который был профессором компьютерной графики в Университете штата Юта в 1970-х годах. Менее известно,
Поделиться книгой в соц сетях:
Обратите внимание, что комментарий должен быть не короче 20 символов. Покажите уважение к себе и другим пользователям!