📚 Hub Books: Онлайн-чтение книгРазная литератураПиксель. История одной точки - Элви Рэй Смит

Пиксель. История одной точки - Элви Рэй Смит

Шрифт:

-
+

Интервал:

-
+
1 ... 104 105 106 107 108 109 110 111 112 ... 170
Перейти на страницу:
треугольника разместить флагштоки в каждом углу, а затем наклонить их в разные стороны. Он вычислял цвет в углах, используя алгоритм, о котором мы говорили выше. Затем затенение в каждой точке внутри треугольника интерполировалось между тремя угловыми оттенками. Гуро использовал так называемую линейную интерполяцию: если оттенок в одном углу — А, а в другом — В, то точка на полпути между двумя углами имеет оттенок посередине между А и В. Рисунок 7.18 (справа) показывает, что хитрый способ размещения флагштоков в углах дает затененное изображение, превосходящее простое плоское затенение.

С затенением по Гуро тоже возникали проблемы. Оно не обеспечивало должных отражений источников света, которые мы часто видим на реальных объектах, или по крайней мере воспроизводило их неубедительно. Вьетнамский аспирант Буй Туонг Фонг, готовившийся к защите в Университете Юты в 1973 году, занялся решением этой проблемы. Он отметил, что затенение по Гуро предполагает неестественный источник света, интенсивность которого изменяется линейно или пропорционально по мере удаления от него. В реальном мире ни один источник света не работает таким образом, ни один из них не является линейным. Фонг добавил реалистичную нелинейность к своей модели источника света (рис. 7.19, справа). Соответственно, по мере приближения к источнику света цветовой оттенок треугольника резко становится ярче. Вы получаете более реалистичный блик в этом месте.

Фонг также использовал более сложный способ расчета затенения, требовавший большей мощности, но показавший лучшие результаты. Как и Гуро, он поставил флагштоки в каждом углу, а затем наклонил их в разные стороны. Гладкая поверхность между ними интерполировалась, таким образом определяя направление флагштока в любой точке треугольника. Фонг также использовал линейную интерполяцию: если флагшток в одном углу наклонен под углом A, а в другом — под углом B, то флагшток в точке на полпути между ними наклонен на угол на полпути между A и B. Как правило, он почти никогда не совпадает с флагштоком, установленным в центре.

Рис. 7.18

Как мы помним из обсуждения сплайнов и патчей в шестой главе, интерполяция — это просто выборка «задом наперед». Таким образом, затенение по Фонгу — это, по сути, еще одно сочетание математики теоремы отсчетов с математикой евклидовой геометрии. Думайте о нем как о поверхности, которая определяет свою оптическую форму, фактически не изменяя геометрическую форму модели. Это, так сказать, поверхность, проходящая через концы флагштоков, парящая над лежащей в ее основе геометрической моделью, — хитрый трюк, позволяющий обойтись без плоских граней, не избавляясь от них на самом деле, как показано на рисунке 7.19 (справа, если игнорировать силуэт фигуры). Это еще один способ создания фальшивого фасада для Голливуда нового типа.

И этот фокус позволяет обобщать. Фонг использовал простую пропорциональную, или линейную, интерполяцию между вершинами флагштоков в углах треугольника. Используя больше флагштоков, распределенных по поверхности, вы можете интерполировать бикубически, создавая гладкую волнистую поверхность, скажем, из лоскутов Безье. Я покажу, как развить эту идею до экстремального приближения на следующем порядке величины Усиления.

Фонг добавил в компьютерное графическое моделирование понятие модели освещения. Иными словами, у затенения также появилось дополнительное значение — освещение. Понятие затенения распространилось на более сложные модели физической оптики.

Рис. 7.19

Тем временем в Калифорнии, рядом со Стэнфордским университетом, в районе, который вскоре станет известен как Кремниевая долина, развивалось еще одно направление Цифрового Света. Оно тоже касалось цветных пикселей, но находилось за пределами Центральной Догмы.

Дик Шауп

Ричард «Дик» Шауп родился в Питтсбурге в 1943 году и вырос рыжеволосым и веснушчатым мальчишкой в нескольких милях к северу, в Гибсонии. Он, сын фермера, располагавший 50 акрами свободного пространства, впоследствии стал неплохим джазовым тромбонистом, а еще и гением электроники. В конце 1950-х годов дядя Дика подарил ему несколько брошюр Хьюго Гернсбека, создателя научно-фантастического журнала Amazing Stories, о радиотехнике и электронике. Они вдохновили его на дальнейшую карьеру в мире компьютеров.

Дик получил докторскую степень в 1970 году в Университете Карнеги — Меллона под руководством Гордона Белла, который впоследствии стал главным архитектором Digital Equipment Corporation. Там Белл участвовал в разработке компьютера PDP-1, на котором создана знаменитая игра Spacewar!. Дик защитил диссертацию о программируемой компьютерной логике — схеме, в которой используется множество копий логической «ячейки», которую можно запрограммировать на определенное функционирование и связь с соседними ячейками. Мы быстро подружились, потому что в своей докторской 1969 года я исследовал клеточные автоматы. Моя тема подразумевала математический эквивалент его изысканий в области аппаратного обеспечения.

Завершив свою диссертацию, Дик уже на следующий день отправился на запад, в Калифорнию, чтобы начать работать в Berkeley Computer Corporation, которая собиралась построить мощную машину с разделением времени. Однако наступила не самая подходящая пора для таких начинаний. Именно тогда рынок компьютеров с разделением времени рухнул, и к ноябрю 1970 года и Дик и его более высокопоставленные коллеги остались без зарплаты. К счастью, Боб Тейлор только что начал набирать сотрудников в новый Исследовательский центр Xerox в Пало-Альто (PARC), расположенный на другой стороне залива Сан-Франциско от Беркли. Он быстро переманил несколько ключевых сотрудников, включая Дика Шаупа, из обанкротившейся компании.

Главным вкладом Дика в Xerox PARC стала Color Video System — цветная видеосистема. Он спроектировал и изготовил аппаратное обеспечение и написал к нему первые программы, в том числе SuperPaint. Система имела 8 бит на пиксель (256 цветов) и полностью цифровой кадровый буфер. Дик не первым использовал цветные пиксели — это доказывает снимок экрана NASA-2, сделанный шестью годами ранее. Однако свою систему он всерьез ориентировал именно на полноценное использование цветной компьютерной графики. Его пиксели были, так сказать, доступны любому, кто умел программировать или рисовать, например мне. Их можно назвать цветными пикселями общего назначения.

Как сломанная нога привела в Xerox PARC

Как вы, наверное, помните из главы 6, благодаря помощи Альберта Эйнштейна маленькому Герберту Фримену удалось бежать от нацистов в 1938 году. Три десятилетия спустя Фримен, к тому времени ставший пионером компьютерной графики, нанял меня, только что закончившего аспирантуру в Стэнфорде, на должность ассистента профессора в Нью-Йоркском университете, где он заведовал кафедрой. Я получил диплом инженера-компьютерщика, а в качестве хобби рисовал маслом и акриловыми красками — наверное, именно поэтому я показался ему подходящим кандидатом для исследований в области компьютерной графики. Вскоре он начал уговаривать меня перебраться из башни в лабораторию — бросить докторскую диссертацию о доказательстве важных для информатики теорем и сосредоточиться

1 ... 104 105 106 107 108 109 110 111 112 ... 170
Перейти на страницу:

Комментарии

Обратите внимание, что комментарий должен быть не короче 20 символов. Покажите уважение к себе и другим пользователям!

Никто еще не прокомментировал. Хотите быть первым, кто выскажется?