Июнь
4
Возникновение графики
Июнь 4, 2008
Хотя требования к системам растровой графики меняются в зависимости от области применения, два из них — скорость действия и разрешающая способность — всегда конфликтуют друг с другом. Чем более реалистичное изображение необходимо получить, тем выше должно быть разрешение и тем богаче цветовая палитра. Однако для хранения такого изображения нужен гигантский объем памяти, а каждое его изменение задает компьютеру непосильную работу. При этом реакция системы, не имеющей мощного скоростного процессора, резко замедляется. Поэтому создатели аппаратуры и программ компьютерной графики работают не только над снижением объема памяти, необходимой для построения сложных изображений, но и над способами повышения скорости обработки графических данных.
Серьезный успех был достигнут в 1974 г. в процессе работы над проблемой повышения качества изображений, получаемых со спутников, которые ведут наблюдение за сельскохозяйственными и лесными угодьями, минеральными ресурсами и т.п. Поскольку для отображения огромного количества параметров, регистрируемых спутниками, необходимы мириады цветов, конструкторы приняли решение оснастить систему памятью колоссального объема. Переломным здесь оказался момент, когда разработчики поняли, что можно резко снизить требования к памяти, используя для каждого изображения всего лишь несколько сотен цветов: пользователь или программа могут подбирать палитру из списка, содержащего тысячи и даже миллионы вариантов. Это открытие привело к созданию так называемых таблиц выбора цветов, быстро приспособленных для многих областей применения машинной графики.
Основной принцип нового подхода заключается в том, что кадровый буфер хранит не саму информацию о цветах, а указатели на адреса памяти, где она записана. Так, кадровый буфер, в котором каждый пиксел описывается восемью битами, может дать только 256 сочетаний красного, зеленого и синего лучей цветной ЭЛТ. Если эти же восемь битов задают адреса, то цвета можно выбирать из почти неограниченного набора оттенков, интенсивности и насыщенности. (Использование для описания каждого пиксела 32 бит дает более 4,3 млрд. вариантов.) Более того, таблицу выбора можно перепрограммировать для определенных типов изображений. Если, например, в каком-то случае преобладают синие и зеленые краски, в таблице может храниться лишь небольшое число оттенков красного, а если изображение темное, то можно отказаться от самых ярких тонов. Таким образом, ограниченная палитра позволяет получать плавные тени и хорошо различимые оттенки для каждого изображения.
Возможность задавать многочисленные интенсивности каждого из цветов помогает преодолеть один из основных дефектов растровых систем, препятствующий созданию реалистичных изображений, — ступенчатость. Пикселы организованы на экране в строки и столбцы, поэтому строго горизонтальные и вертикальные линии получаются прямыми и гладкими, но на диагоналях всегда видны зазубрины или ступеньки, как на лестнице. Этот эффект, называемый математическим термином «дискретизация», можно свести к минимуму, используя экран с повышенным разрешением: подобно ребрам египетских пирамид, если на них смотреть издалека, ступенчатая линия, состоящая из маленьких пикселов, будет значительно больше походить на прямую, чем такая же линия, состоящая из крупных пикселов. Но чем выше пространственное разрешение экрана, тем больше для него требуется памяти; другое решение этой проблемы состоит в применении переменных интенсивностей и специальных программ.
Хотя появление больших блоков памяти для кадровых буферов выдвинуло растровую графику на первое место, возникли новые затруднения, связанные с обработкой гигантских объемов информации. Большинство современных компьютеров имеет архитектуру последовательного (фон-неймановского) типа, которая, как уже указывалось, ограничивает их вычислительные возможности: при наличие одного канала связи между центральным процессором (ЦП) и памятью процессор подавляющую часть времени расходует не на вычисления, а на обмен информацией с памятью, что существенно снижает его эффективность.
Пытаясь преодолеть эти трудности, конструкторы обратились к разработке особых устройств, действующих одновременно с ЦП. Некоторые ИС подобного типа, называемые сопроцессорами, предназначены только для вычислений, но выполняют их с высокой скоростью. Другие ИС выполняют некоторые специальные функции в системах с расширенными графическими возможностями и системах реального времени, подобных летным тренажерам, а также системах кинопроизводства и автоматизированного проектирования. (В частности, быстрому снижению стоимости ИС способствовало применение систем автоматизированного проектирования для разработки самих ИС.)
По своей сути графические функции имеют математическую природу, и для их разработки требуются как творческие способности, так и умение кропотливо работать с числовой информацией, описывающей изображения. Джеймс Блинн, специалист по вычислительной технике, который с 1978 г. занимается моделированием полетов к Юпитеру, Сатурну и другим планетам, отметил: «Художники пишут картины, нанося краски на холст. Те, кто связан с компьютерной графикой, создают свои творения, придумывая математические функции, графики которых похожи на реальные предметы». Но если ученые, подобные Блинну, чувствуют себя в математических методах компьютерной графики «как дома», большинство других людей предпочло бы строить и преобразовывать изображения, не прибегая к алгебре или тригонометрии.
Чтобы открыть этому большинству дорогу к компьютерной графике, необходимо заложить математические функции в программное обеспечение; тогда богатый набор сложных инструкций для компьютера можно привести в действие несколькими простыми командами. Первой такой программой был «Блокнот» Айвена Сазерленда. В 60—70-е годы разрабатывались все более сложные методы повышения реалистичности компьютерных изображений: можно назвать, например, трассирование лучей и наложение текстур. Новые приемы стали применять в самых разнообразных областях — от инженерного конструирования до химических исследований, — что одновременно привело к росту потребности в графических системах с богатыми возможностями. Возникло явление, которое иногда называют кремниевым круговоротом: изготовители компьютерных систем обнаружили, что, продавая достаточное количество своей продукции, могут сделать перевод графического программного обеспечения в специализированные ИС экономически оправданным, а использование новых ИС в свою очередь упрощает эти системы и повышает их быстродействие. К середине 80-х годов даже дешевые домашние компьютеры начали оснащать ИС, выполняющими основные графические функции. На протяжении 70-х и в начале 80-х годов компьютерная графика стала все глубже проникать в повседневную жизнь. Телевизионные компании, стремясь повысить популярность своих программ, используют компьютеры для получения цветных, быстро меняющихся изображений. Кинематографисты идут еще дальше, вводя в фильмы специальные эффекты, переносящие зрителей в такие недоступные места, как глубокий космос или «внутренность» компьютерной видеоигры. А производители игровых автоматов вовлекли миллионы людей в мир интерактивной графики, от электронного пинг-понга до автогонок. Одновременно графика становилась не только целью, но и средством. Некоторые специалисты по компьютерам поняли, что доступность компьютерной графики, позволяющая игрокам почти интуитивно взаимодействовать со специализированными компьютерами, может помочь новичкам в освоении компьютеров.
вперед »