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

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

Шрифт:

-
+

Интервал:

-
+
1 ... 98 99 100 101 102 103 104 105 106 ... 170
Перейти на страницу:
улыбкой. Затем он рассказал мне об особенно значимой встрече.

В 1951 году абитуриент Ружло приехал в Корнеллский университет в штате Нью-Йорк за четыре дня до начала занятий. Он специально прибыл заранее, чтобы пройти вводные занятия для первокурсников, проводившиеся в лагере бойскаутов, где он делил палатку с другим абитуриентом — Дональдом Гринбергом, в будущем еще одним пионером компьютерной графики. Как мы увидим, их жизни и дальше оказались переплетены.

Ружло окончил Корнеллский университет в 1956 году со степенью бакалавра электронной техники. В июле 1960-го он начал работать на предприятии General Electric в Итаке, где расположен и кампус Корнелла. В том же году Боб Шумахер, более высокий из двоих друзей, получил степень магистра электронной техники в Массачусетском технологическом институте и тоже присоединился к команде General Electric в Итаке. Когда я встретил его в доме Ружло в Солт-Лейк-Сити, он больше не носил короткую военную стрижку и не курил трубку, как в юности. Сейчас он авиаинструктор и занимается народными танцами. Он смотрит прямо вам в глаза, когда говорит, и вы понимаете, что чепухи он не скажет. Когда я попросил технических подробностей, то получил их, тщательно откалиброванные для моего уровня понимания.

Они вдвоем — вместе с часто упоминавшейся командой других инженеров — разработали симуляторы NASA-1 и NASA-2 для проекта «Аполлон». Они построили NASA-1 в лаборатории General Electric в Итаке и NASA-2 в лаборатории General Electric в Сиракузах, примерно в 50 милях к северу от Итаки. Для NASA-2 использовались интегральные микросхемы, которые тогда только-только стали доступными. К началу 1967 года симулятор умел отображать первые цветные пиксели и, используя их, отрисовывал первые трехмерные визуализированные объекты. Они были одними из первых плодов действия закона Мура и, насколько это касается нашей книги, ознаменовали истинное начало Эпохи 2.

В 1972 году Ружло и Шумахер присоединились к компании Эванса и Сазерленда Evans & Sutherland в Солт-Лейк-Сити и создали там впечатляющую серию авиасимуляторов со все возрастающей сложностью. Айвен Сазерленд рассказал мне в разговоре по скайпу, что бывшие инженеры General Electric сыграли важнейшую роль в коммерческом успехе Evans & Sutherland. В конце концов Ружло даже занял пост генерального директора.

Более ранние цветные пиксели — сплошные и красные

Я почти закончил работу над книгой, когда пионер графики Боб Спроулл спросил меня, знаю ли я, как Ружло и Шумахер делали прототип оборудования для NASA-2. Смысл его вопроса был ясен. Первый цифровой цвет мог появиться до 31 марта 1967 года. Интуиция Спроулла меня не подвела.

Как вспоминал Шумахер, чтобы убедить NASA в возможности визуализации трехмерных объектов, они сделали демонстрационный показ «одного треугольника в реальном времени». Я двинулся по указанному следу и обнаружил золотую жилу. Ружло и Шумахер более подробно описали эту демонстрацию. Ее провели после запуска NASA-1 «в 1965 году (возможно, в самом начале 1966-го)». Он изображала сплошной красный треугольник, визуализированный в реальном времени. Он вращался и убедительно двигался в трех измерениях. Они использовали программируемую часть симулятора NASA-1 в качестве компьютера, управляющего перемещениями модели, и собрали отдельную схему на дискретных компонентах (еще не интегральных схемах) для рендеринга.

Шумахер вспоминал: «Демонстрация с треугольником убедила нас, что сделать полноценную систему, способную на обработку нескольких полигонов таким способом, будет непомерно сложной и дорогой задачей. К счастью, примерно в то же время, когда мы подписали контракт, появились первые настоящие интегральные микросхемы. Пока мы разрабатывали свой симулятор, Motorola все еще устраняла ошибки производственного процесса!»

Эта почти забытая демонстрация — событие передовой Эпохи 2 — заслуживает особого упоминания. Консервативный подход к датировке предполагает, что первые цветные пиксели появились в самом начале 1966 года, но это не точная дата. Давайте двигаться дальше, 1967-й отмечен первым рендерингом цветных полутеней из пикселей.

Как визуализировать цветной треугольник

Ружло и Шумахер вывели на экран NASA-2 компании General Electric цветные трехмерные изображения лунного модуля «Аполлон» (перелистайте назад до рисунка 7.1). Как им это удалось?

Я уже отмечал, что сложную трехмерную геометрическую модель почти всегда можно заменить моделью, состоящей только из треугольников. Имитируя подход из главы 6, я покажу, как сделать рендер — визуализировать — один треугольник (миллионы других треугольников визуализируются точно так же при помощи сверхсилы компьютерного Усиления).

Треугольником мы будем считать участок плоской поверхности, ограниченной тремя отрезками. В планиметрии под треугольником понимаются сами отрезки, но здесь важна именно поверхность между ними.

Давайте сначала рассмотрим вариант, где, как в случае с лунным модулем 1967 года, каждый треугольник значительно больше расстояния между пикселями. Позже мы обсудим вариант, когда треугольники значительно меньше расстояния между пикселями — в современном мире это наиболее распространенный случай. На рисунке 7.5 показаны оба (внимательно посмотрите и найдите маленький треугольник). Точки показывают местоположения пикселей, то есть места, где берутся отсчеты. Для наших целей представьте, что эти треугольники представляют собой чистую геометрию. На самом деле это, конечно, не так — треугольники воспроизведены с помощью механизма отображения этой страницы. Но давайте просто будем считать их идеальными треугольниками.

Вот худший способ перевести их в пиксели: если пиксель находится внутри треугольника, то получает его цвет (синий), в противном случае — цвет фона (белый). На рисунке 7.6 показан результат: маленькие синие кружочки соответствуют синим пикселям. Обратите внимание, что маленький треугольник полностью исчез, а большой испещрен зазубринами.

Но это не рендеринг цифрового изображения в виде синего треугольника, а синие кружочки — не пиксели (по иронии судьбы, сама иллюстрация — это цифровое изображение). Маленькие кружочки также не пиксели, как и маленькие квадратики. Я мог бы использовать вместо них, скажем, маленькие звездочки. Каждый просто обозначает пиксель, то есть местоположение точки и связанный с ней цвет. Черные точки (возвращаясь к рисунку 7.5) обозначают точки, в которых производится выборка; кружочки — это цветные отсчеты, взятые в этих местах. Обратите внимание, что все остальные кружочки на рисунке 7.6 белые, поэтому вы их не видите. Все это должно быть обработано (через разбрасывание и сложение) устройством отображения (экраном или принтером), чтобы превратить их в цифровое изображение, которое мы можем видеть.

Хотя это и худший способ рендеринга, именно им пользовались в первые дни. Именно так действовали инженеры General Electric в 1967 году, чтобы визуализировать лунный модуль с первыми цветными пикселями. Обратите внимание на неровности по краям лунного модуля на рисунке 7.1. Перед вами наивный рендеринг, с минимальным использованием теоремы отсчетов.

Дальше мы сделаем идеальную визуализацию тех же двух идеальных треугольников, по максимуму используя

1 ... 98 99 100 101 102 103 104 105 106 ... 170
Перейти на страницу:

Комментарии

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

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