
- •Структура и состав средств компьютерной графики
- •Технические средства компьютерной графики
- •Принципы формирования графического изображения на экране дисплея
- •Интерфейсные шины
- •Разновидности видеоадаптеров
- •Цвет в компьютерной графике
- •Растровые форматы
- •Векторные и метафайловые форматы
- •Сжатие графических данных
- •Современные графические API-интерфейсы
- •API Microsoft DirectX
- •API OpenGL
- •API Fahrenheit
Принципы формирования графического изображения на экране дисплея
Вмониторах используется система цветов RGB, однако, если компьютеры используются в издательском деле, часто возникает необходимость преобразования графических данных с RGB цветопередачей в графические файлы CMYK . Для этого существуют специальные алгоритмы и программы. Однако существуют и программы, позволяющие работать непосредственно в цветах
CMYK.
Существуют также системы цветов HSB (тон, насыщенность, яркость) и HSL (тон, насыщенность, освещенность). Оптически и физиологически они лучше, естественнее воспринимаются человеком, однако для практической работы эти системы должны быть преобразованы в системы RGB или CMYK.
Вцветных мониторах с электронно-лучевой трубкой управление цветом осуществляется параллельно по трем независимым каналам – R,G,B. В каждом канале имеется электронная пушка и модулятор, управляющий яркостью луча соответствующей цветовой составляющей. На экране монитора, по определенному закону, создается точечный люминофорный растр из люминофоров трех цветов. Каждый электронный луч должен возбуждать только соответствующие ему точки люминофора. Для обеспечения этого между электронными пушками
иповерхностью экрана помещают специальные устройства – маски или решетки. В ЭЛТ, в основном, используются три типа маски. Самая распространенная
– это специальная перфорированная, так называемая теневая маска с триадными отверстиями. На экране электронно-лучевой трубки создается точечный люминофорный растр из люминофоров трех цветов по определенному закону. Электронные пушки настроены таким образом, что их лучи пересекаются в плоскости маски (масочные электронно-лучевые трубки). После прохождения маски каждый луч защищен (маскирован) от пересечения с другими цветовыми точками и может попадать только на точки «своего» цвета. Однако маска за-
11
держивает значительную часть электронов, поэтому для достижения большей яркости и контрастности приходится увеличивать мощность пушки, что не всегда возможно.
Втрубках, получивших название Trinitron® (производство компании Sony®, вместо маски используется апертурная решетка (щелевая), которая представляет собой вертикально натянутые нити. Это позволяет увеличить поток электронов за счет большей прозрачности решетки и гарантирует стабильный горизонтальный размер точки по всему экрану.
Третий тип – гибридный. Он запатентован компанией NEC®. Он представляет собой решетку, в которой вертикальные щели соединены перемычками.
Внастоящее время многие мониторы большого размера снабжены апертурной решеткой.
Взависимости от конструктивного выполнения экрана различают элек- тронно-лучевые трубки следующих типов: сферические, цилиндрические, трубки малой кривизны и плоские.
Экран сферической трубки представляет собой часть сферы. В таких электронно-лучевых трубках имеет место некоторое искажение изображения в углах и на границах экрана. Люминесцентные точки расположены на поверхности экрана группами из трех точек R,G,B цветов, образующих равносторонний треугольник (триада). Трубки обычно снабжены теневой маской, которая расположена на небольшом расстоянии от экрана.
Цилиндрические электронно-лучевые трубки (фирмы Trinitron®, Diamondtron® и др.) имеют плоские вертикальные и закругленные горизонтальные грани. В них используется другая технология изготовления экрана. В отличие от трубок с теневой маской, в электронно-лучевых трубках типа Trinitron® установлена маска с вертикальными щелями (апертурная решетка). Люминофорные R,G,B точки образуют на поверхности экрана вертикальные полосы и бомбардируются электронными пушками через апертурную решетку. Такие
12
ЭЛТ обеспечивают лучшую яркость и контрастность изображения, но несколько проигрывают традиционным электронно-лучевым трубкам в резкости.
Трубки с малой кривизной поверхности экрана также имеют экран сферической формы, но радиус этой сферы очень велик, так что экран выглядит практически плоским. Это уменьшает искажения, а также блики от отраженного света. Обычно в таких электронно-лучевых трубках применяются теневые маски, а в ряде случаев – щелевые маски, объединяющие достоинства теневой маски и апертурной решетки.
В некоторых последних моделях мониторов (например, фирмы Panasonic®) применяются электронно-лучевые трубки с абсолютно плоскими экранами, дающими высокое качество изображения.
В любом случае под действием отклоняющих напряжений UX и UY три электронных луча одновременно сканируют экран, при этом их взаимная ориентация остается неизменной. Изменяя интенсивность луча для каждого основного цвета, можно получать различные цветовые оттенки. Обычно в каждом цвете можно задавать 2q градаций яркости; тогда количество цветовых оттенков равно 23q . Например, при q = 4 по каждому цвету можно получить 4096 цветовых оттенков.
ВидеоадаптерыперсональныхЭВМ
Структурные схемы управления растровыми графическими терминалами и их практическая реализация отличаются большим разнообразием и зависят от типа ЭВМ и дисплея, используемой элементной базы и других факторов. Для большинства современных персональных ЭВМ характерна следующая структура, изображеннаянарисунке1.1.
13

Персональная ЭВМ |
|
|
|
||
|
|
Видеоадаптер |
|
|
|
ЦПУ |
Память |
Видео |
Дисплейный |
Дисплей |
|
память |
процессор |
||||
|
|
|
Стандартный интерфейс
Рисунок 1.1 – Структура управления видеосистемой ЭВМ
Выводом информации на экран монитора непосредственно управляет дисплейный процессор (видеоконтроллер), который вместе с видеопамятью обычно расположен на отдельной плате, входящей в состав системного блока компьютера - плате графического адаптера (видеоадаптера). Таким образом, видеоадаптер (другиеназваниявидеокарта, видеоплата) - этототузелперсональногокомпьютера, которыйнепосредственноотвечаетзавыводграфическойинформации.
Первым видеоадаптером (1981 г.) был MDA (Monochrome Display Adapter),
использовавшийся в компьютерах IBM PC. Он был в состоянии отображать только текстовую информацию с разрешением 80x25 символов (физически 720x350 точек) и имел пять атрибутов текста: обычный, яркий, инверсный, подчеркнутый и мигающий. Никакойцветовойинформациионпередаватьнемог.
Дальнейшим развитием MDA был адаптер HGA (Hercules Graphics Adapter),
разработанный фирмой Hercules. Он мог работать только в монохромном графическомрежимесразрешением720x348 точекиимел32 КБвидеопамяти.
Цвет на экране компьютеров появился с созданием CGA (Color Graphics Adapter - цветной графический адаптер). Он работал в текстовых режимах 80x25 и 40x25 (матрица символа 8x8). Графических режимов было два: цветной, с разре-
14
шением 320x200 точек и с возможностью использовать четыре палитры по четырецвета, имонохромный, сразрешением 640x200 точек.
Далее появился EGA (Enhanced Graphic Adapter - улучшенный графический адаптер). Графический режим позволял использовать при разрешении 640x350 одновременно 16 цветов из палитры в 64 цвета. Видеопамять была увеличена до 250КБ и разделена на отдельные битовые плоскости - слои, каждый из которыхсодержалбитытолькоодногоизтрехосновныхцветов.
У всех перечисленных типов адаптеров интерфейсы с монитором были цифровыми. При этом EGA имел по две линии передачи на каждый из основных цветов, т.е. каждый основной цвет мог отображаться с полной яркостью, 2/3 или 1/3 отполнойяркости, чтоидаваловсуммемаксимум64 цвета.
В 1987 г. фирма IBM выпускает для новой серии компьютеров PS/2 видеоадаптер MCGA (Multicolor Graphics Adapter - многоцветный графический адаптер). Текстовое разрешение было поднято до 640x400, что позволило использовать режим 80x50 при матрице 8x8, а для режима 80x25 - матрицу 8x16. Количество цветов было увеличено до 262 144 (64 уровня яркости по каждому цвету). Битовых плоскостей не было, а из-за огромного количества яркостей основных цветов возникланеобходимостьиспользованияаналоговогоцветовогосигнала.
Затем та же фирма создала адаптер VGA (Video Graphics Array - графический видеомассив), который стал фактическим стандартом видеоадаптера с конца восьмидесятых годов. Был добавлен графический режим 640x480 с доступом через битовые плоскости. Он замечателен тем, что соотношение числа пикселей по горизонтали и вертикали совпадает со стандартным соотношением сторон экрана - 4:3. Дальше появился IBM 8514/A с разрешением 640x480x256 и 1024x768x256 и IBM XGA сувеличеннойглубинойцвета640х480х256К.
Наконец, появляется новый стандарт видеоадаптеров SVGA (Super VGA) - расширение VGA с добавлением более высоких режимов и дополнительного сервиса. Число одновременно отображаемых цветов увеличилось до 65 536 (High Color), 16,7 млн. (True Color) и более, появились дополнительные текстовые ре-
15
жимы, применяется множество новых аппаратных решений, в том числе новые микросхемы видеопамяти, ЦАП RAMDAC и др.
Графический пользовательский интерфейс, появившийся во многих операционных системах, стимулировал новый этап развития видеоадаптеров. Появилось понятие графический ускоритель (graphics accelerator), т.е. видеоадаптер, который выполняет многие графические функции на аппаратном уровне, частично разгружая темсамымцентральныйпроцессор.
Основой видеоадаптера является видеоконтроллер, именно от него зависят быстродействие и возможности видеоадаптера. Он отвечает за вывод изображения из видеопамяти, регенерацию ее содержимого, формирование сигналов развертки для монитора и обработку запросов центрального процессора. Для ускорения вывода изображения на экран монитора и снижения частоты конфликтов при обращении к памяти со стороны видеоконтроллера и центрального процессора контроллер имеет отдельный буфер, который, в свободное от обращений центрального процессора время, заполняется данными из видеопамяти. Внутренняя шина данных контроллера обычно шире внешней (32, 64, 128 и даже 256 разрядов против 16, 32 или 64). Если конфликта избежать не удается, видеоконтроллеру приходится задерживать обращение центрального процессора к видеопамяти, что снижает производительность системы, для исключения подобных конфликтов в ряде контроллеров применяется так называемая двухпортовая память (VRAM, WRAM), допускающая одновременное обращениесостороныдвухустройств.
Современные видеоконтроллеры имеют архитектуру, по сложности приближающуюся к архитектуре центрального процессора компьютера, и зачастую превосходят его по числу транзисторов. Например, графический процессор (по терминологии компании-производителя) GeForce 256 компании nVidia содержит около 23 млн. транзисторов, в то время как ядро Pentium III всего 9,5 млн., а с учетоминтегрированной кэш-памяти - 28 млн.
В современном видеоконтроллере обычно имеется несколько блоков обработки информации:
16
-блок обработки 2D-графики, состоящий из SVGA-ядра и ядра графического акселератора;
-блок обработки ЗD-графики, который обычно разделяется на геометрическоеядро и кэшвершин;
-блок растеризации, кэш текстур и ядро обработки видеоданных. Кроме того, обязательно присутствуют контроллеры видеопамяти и порта главной шины (например, PCI или AGP), факультативно добавляется контроллер какого-нибудь дополнительного внешнего порта, например VIP, во многие чипы встраивается еще и RAMDAC.
RAMDAC (Random Access Memory Digital-to-Analog Converter - цифроана-
логовый преобразователь памяти с произвольным доступом) служит для окончательного формирования изображения на экране монитора. Он преобразует результирующий поток данных, формируемых видеоконтроллером, в уровни интенсивности цвета, подаваемые на монитор. Все современные мониторы используют аналоговый видеосигнал, поэтому возможный диапазон цветности определяетсяпараметрамиRAMDAC.
DR DRAM (Direct RAMbus DRAM) - память, использующая специальный канал передачи данных (RAMbus Channel), представляющий специальным образом организованную шину данных. По этому каналу можно передавать информацию очень большими потоками, скорость передачи для одного канала может достигать 800 Мбайт/с. В отличие от MDRAM с независимыми банками памяти, DR DRAM содержит зависимые банки, причем на два банка используются общие усилители, формирователи сигналов и другая логика. Это позволяет разместить больше банков памяти на заданной площади кристалла и снизить себестоимость памяти. В настоящее время этот тип памяти обеспечивает наивысшую пропускнуюспособность наодинчиппамятисредивсехостальныхтиповпамяти.
3D-RAM - трехмерная память. Она рассчитана, главным образом, на применение в трехмерных видеоускорителях. Помимо массива динамической памяти, построенного на базе SDRAM, 3D-RAM имеет еще и блок арифметико-
17