Автор работы: Пользователь скрыл имя, 20 Декабря 2010 в 09:47, реферат
Слово «компьютер» означает «вычислитель», т.е. устройство для вычислений. Потребность в автоматизации обработки данных, в том числе в вычислении, возникла очень давно. Многие тысячи лет назад для счёта использовались счётные палочки, камешки и т.д. Более 1500 лет назад (а может ещё и раньше) для облегчения вычислений стали использовать счёты.
Удостовериться, что заявленные значения скорости работы RAMDAC правда - достаточно просто. Если известно, в каком разрешении вы работаете, например 1024х768, и с какой частотой происходит обновление изображения (refresh rate), например 75 Hz, значит можно узнать какова скорость работы DAC. Скорости в 220 MHz вполне достаточно для отображения в режимах 1280х1024 при 85 Hz и 1600х1200 при 75 Hz. Для режима 1600х1200 при 85 Hz требуется скорость в 250 MHz. Известно, что по Европейским стандартам во всех разрешениях должна поддерживаться частота обновления экрана в 85 Hz, однако лишь немногие модели современных мониторов могут работать в режиме 1600х1200 при 85 Hz.
Напомним известные факты: если частота обновления экрана слишком низкая, то пользователю будет заметно мерцание изображения, в следствии чего можно испортить зрение. Частота обновления экрана в 75 Hz уже достаточно быстрая, чтобы глаз человека мог заметить мерцание. Поэтому, гораздо более разумно сосредоточить внимание на значениях частоты обновления изображения, а не на скорости работы DAC, тем более, что эти значения взаимосвязаны.
Графические
акселераторы (ускорители) -- специализированные
графические сопроцессоры, увеличивающие
эффективность видеосистемы. Их применение
освобождает центральный процессор от
большого объёма операций с видеоданными,
так как акселераторы самостоятельно
вычисляют, какие пиксели отображать на
экране и каковы их цвета.
Видеоакселераторы
Изображение,
которое мы видим на экране монитора,
представляет собой выводимое специальным
цифроаналоговым
Современные
2D-ускорители имеют 64- или 128-разрядную
шину данных, причем для эффективного
использования возможностей этой шины
на видеокарте должно быть установлено
2 или 4 Мбайт видеопамяти
Можно сказать, что к настоящему моменту 2D-ускорители достигли совершенства. Все они работают столь быстро, что несмотря на то, что их производительность на специальных тестах может отличаться от модели к модели на 10-15%, пользователь, скорее всего, не заметит этого различия. Поэтому при выборе 2D-ускорителя следует обратить внимание на другие факторы: качество изображения, наличие дополнительных функций, качество и функциональность драйверов, поддерживаемые частоты кадровой развертки, совместимость с VESA (для любителей DOS-игр) и т. п. Микросхемы 2D-ускорителей в настоящее время производят ATI, Cirrus Logic, Chips&Technologies, Matrox, Number Nine, S3, Trident, Tseng Labs и другие компании.
Под мультимедиа-акселераторами обычно понимают устройства, которые помимо ускорения обычных графических операций могут также выполнять ряд операций по обработке видеоданных от разных источников.
Прежде всего, это функции по ускорению вывода видео в форматах AVI, Indeo, MPEG-1 и других. Проблема в том, что видеофильм в формате NTSC идет со скоростью 30 кадров в секунду, PAL и SECAM -- 25 кадр/с. Скорость смены кадров в цифровом видео перечисленных форматов также меньше или равна 30 кадр/с, однако разрешение изображения редко превышает 320 x 240 пикселов. При этих параметрах скорость поступления информации составляет порядка 6 Мбайт/с и процессор успевает выполнить ее декомпрессию и пересылку по шине в видеопамять. Однако такой размер изображения слишком мал для комфортного просмотра на экране, поэтому его обычно масштабируют на весь экран. В этом случае скорость потока данных возрастает до десятков и сотен мегабайт в секунду. Это обстоятельство привело к появлению видеоакселераторов, которые умеют самостоятельно масштабировать видео в форматах AVI и MPEG-1 на весь экран, а также выполнять сглаживание отмасштабированного изображения, чтобы оно не выглядело, как набор квадратиков. Подавляющее большинство современных 2D-ускорителей являются в то же время и видеоускорителями, а некоторые, например ATI Rage128, умеют воспроизводить и видео в формате MPEG-2 (т. е. с исходным разрешением 720 х 480).
К мультимедиа-функциям также относят аппаратную цифровую компрессию и декомпрессию видео (что почти не встречается на массовых видеокартах), наличие композитного видеовыхода, вывод TV-сигнала на монитор, низкочастотный видеовход и высокочастотный TV-вход, модуль для работы с телетекстом и другие функции.
3D-акселераторы
Когда в роли двигателя прогресса выступили компьютерные игры, 2D-ускорители , почти исчерпали свои возможности, и эволюция видеокарт пошла по пути наделения их все более мощными средствами ускорения трехмерной машинной графики. Видеоадаптеры, способные ускорять операции трехмерной графики, получили название 3D-ускорителей (синонимом является 3D-акселератор, а также часто встречаемое жаргонное «3Dfx» для обозначения всех 3D-ускорителей, а не только произведенных компанией 3Dfx Interactive). Вообще, 3D-ускорители существовали и раньше, но областью их применения было трехмерное моделирование и САПР, стоили они очень дорого (от 1 до 15 тыс. долларов) и были практически недоступны массовому пользователю.
Какие же действия ускоряет 3D-акселератор? В компьютере трехмерные объекты представляются с помощью геометрических моделей, состоящих из сотен и тысяч элементарных геометрических фигур, обычно треугольников. Задаются также пространственное положение источников света, отражательные свойства материала поверхности объекта, степень его прозрачности и т. п. При этом некоторые объекты могут частично загораживать друг друга, между ними может переотражаться свет; пространство может быть не абсолютно прозрачным, а затянутым туманом или дымкой. Для большего реализма необходимо учесть и эффект перспективы. Чтобы поверхность смоделированного объекта не выглядела искусственной, на нее наносится текстура -- двухмерная картинка небольшого размера, передающая цвет и фактуру поверхности. Все перечисленные трехмерные объекты с учетом примененных к ним эффектов должны в конечном итоге быть преобразованы в плоское изображение. Эту операцию, называемую рендерингом, и выполняет 3D-ускоритель.
Перечислим наиболее распространенные операции, которые 3D-ускоритель выполняет на аппаратном уровне:
Удаление
невидимых поверхностей. Обычно выполняется
по методу Z-буфера, который заключается
в том, что проекции всех точек
трехмерной модели объекта на плоскость
изображения сортируются в
Закрашивание (Shading) придает треугольникам, составляющим объект, определенный цвет, зависящий от освещенности. Бывает равномерным (Flat Shading), когда каждый треугольник закрашивается равномерно, что вызывает эффект не гладкой поверхности, а многогранника; по Гуро (Gouraud Shading), когда интерполируются значения цвета вдоль каждой грани, что придает криволинейным поверхностям более гладкий вид без видимых ребер; по Фонгу (Phong Shading), когда интерполируются векторы нормали к поверхности, что позволяет добиться максимальной реалистичности, однако требует больших вычислительных затрат и в массовых 3D-ускорителях пока не используется. Большинство 3D-ускорителей умеет выполнять закрашивание по Гуро.
Отсечение (Clipping) определяет часть объекта, видимую на экране, и обрезает все остальное, чтобы не выполнять лишних расчетов.
Расчет
освещения. Для выполнения этой процедуры
часто применяют метод
Наложение текстур (Texture Mapping), или наложение плоского растрового изображения на трехмерный объект с целью придания его поверхности большей реалистичности. Например, в результате такого наложения деревянная поверхность будет выглядеть именно как сделанная из дерева, а не из неизвестного однородного материала. Качественные текстуры обычно занимают много места. Для работы с ними применяют 3D-ускорители на шине AGP, которые поддерживают технологию сжатия текстур. Наиболее совершенные карты поддерживают мультитекстурирование -- одновременное наложение двух текстур.
Фильтрация (Filtering) и сглаживание (Anti-aliasing). Под сглаживанием понимается уменьшение искажений текстурных изображений с помощью их интерполяции, особенно на границах, а под фильтрацией понимается способ уменьшения нежелательной «зернистости» при изменении масштаба текстуры при приближении к 3D-объекту или при удалении от него. Известна билинейная фильтрация (Bilinear Filtering), в которой цвет пикселя вычисляется путем линейной интерполяции цветов соседних пикселов, а также более качественная трилинейная фильтрация с использованием MIP-карт (Trilinear MIP Mapping). Под MIP-картами (от лат. Multum in Parvum -- «многое в одном») понимается набор текстур с разными масштабами, что позволяет в процессе трилинейной фильтрации выполнять усреднение между соседними пикселями и между соседними MIP-картами. Трилинейная фильтрация дает особенный эффект при наложении текстур на протяженный объект, удаляющийся от наблюдателя. Современные платы поддерживают трилинейную фильтрацию.
Прозрачность, или альфа-канал изображения (Transparency, Alpha Blending) -- это информация о прозрачности объекта, позволяющая строить такие прозрачные и полупрозрачные объекты, как вода, стекло, огонь, туман и дымка. Наложение тумана (Fogging) часто выделяется в отдельную функцию и вычисляется отдельно.
Смешение цветов, или дизеринг (Dithering) применяется при обработке двух- и трехмерных изображений с большим количеством цветов на устройстве с меньшим их количеством. Этот прием заключается в рисовании малым количеством цветов специального узора, создающего при удалении от него иллюзию использования большего количества цветов. Пример дизеринга -- применяемый в полиграфии способ передачи градаций серого цвета за счет нанесения мелких черных точек с различной пространственной частотой. В 3D-ускорителях дизеринг используется для передачи 24-битного цвета в 8- или 16-битных режимах.
Для
поддержки функций 3D-ускорителя в
играх и других программах существует
несколько интерфейсов
Интерфейс Direct3D компании Microsoft стал фактическим стандартом для большинства компьютерных игр; и большинство 3D-ускорителей укомплектованы Direct3D-драйверами. Однако стоит иметь в виду, что Direct3D поддерживается только в среде Windows 95/98, а уже в Windows NT большинство плат не поддерживает аппаратных функций ускорения.
Разработанный компанией Silicon Graphics для своих графических станций Iris GL интерфейс прикладного программирования OpenGL стал общепринятым стандартом для программ трехмерного моделирования и САПР. Используемый в профессиональных 3D-ускорителях, он позволяет очень точно описывать параметры сцены. OpenGL в настоящее время является открытым стандартом, контролируемым ассоциацией OpenGL Architecture Review Board, в которую помимо Silicon Graphics входят Digital, IBM, Intel, Intergraph, Microsoft и др. Несмотря на это, существует множество диалектов OpenGL. По распространенности в области компьютерных игр OpenGL уступает Direct3D.
Драйвер 3D-ускорителя может поддерживать OpenGL в двух режимах: усеченном MCD (Mini Client Driver) и полном ICD (Installable Client Driver). Драйвер MCD реализует только базовый набор операций, ICD-- высокооптимизированный драйвер, который обеспечивает максимальное быстродействие. К сожалению, многие производители 3D-ускорителей, заявив о своей полной поддержке OpenGL, не обеспечивают ее даже на уровне MCD-драйвера. Наличием стабильных ICD-драйверов могут похвастаться лишь немногие 3D-ускорители (в основном на базе чипсетов 3DPro, Glint, Permedia 2 и RivaTNT).