Ім'я файлу: 14.docx
Розширення: docx
Розмір: 36кб.
Дата: 03.06.2020
скачати

План

Відеоадаптер

Відеопам'ять

Трохи технічних подробиць

RAMDAC

3D-акселератори

Відеоадаптер

Відеопідсистема будь-якого комп'ютера складається з двох частин - відеоадаптера, що вставляється в роз'єм розширення на системній платі і дисплея, що підключається до відеоадаптера.

Відеоадаптер може бути оформлений у вигляді окремої плати, що вставляється в слот розширення комп'ютера, або може бути розташований безпосередньо на системній платі комп'ютера.

Відеоадаптер включає відеопам'ять, в якій зберігається зображення, що відображається в даний момент на екрані дисплея, постійний пристрій, що запам'ятовує, в якому записані набори шрифтів, що відображаються відеоадаптером в текстових і графічних режимах, а також функції BIOS для роботи з відеоадаптером. Крім того, відеоадаптер містить складний пристрій, що управляє, забезпечує обмін даними з комп'ютером, формування зображення і деякі інші дії.

Відеоадаптери можуть працювати в різних текстових і графічних режимах, що розрізняються дозволом, кількістю квітів, що відображаються, і деякими іншими характеристиками.

Сам відеоадаптер не відображає дані. Для цього до відеоадаптера необхідно підключити дисплей. Зображення, що створюється комп'ютером, формується відеоадаптером і передається на дисплей для надання її кінцевому користувачеві.

Відеоадаптер призначений для зберігання відеоінформації і її відображення на екрані монітора. Він безпосередньо управляє монітором, а також процесом виведення інформації на екран за допомогою зміни сигналів рядкової і кадрової розгортки ЭЛТ монітора, яскравості елементів зображення і параметрів змішення квітів. Основними вузлами сучасного відеоадаптера є власне відеоконтроллер (як правило, замовлена БІС — ASIC), відео BIOS, відеопам'ять, спеціальний цифроаналоговий перетворювач RAMDAC (Random Access Memory Digital to Analog Converter), кварцовий генератор (один або декілька) і мікросхеми інтерфейсу з системною шиною (ISA, VLB, PCI, AGP або інший). Важливим елементом відеопідсистеми є власна пам'ять. Для цієї мети використовується пам'ять відеоадаптера, яка часто також називається відеопам'яттю, або фрейм-буфером, або ж частина оперативної пам'яті ПК (у архітектурі з пам'яттю UMA, що розділяється).

Всі сучасні відеопідсистеми можуть працювати в одному з двох основних відеорежимів: текстовому або графічному. У текстовому режимі екран монітора розбивається на окремі символьні позиції, в кожній з яких одночасно може виводитися тільки один символ. Для перетворення кодів символів, що зберігаються у відеопам'яті адаптера, в точкові зображення на екрані служить так званий знакогенератор, який зазвичай є ПЗП, де зберігаються зображення символів, «розкладені» по рядках. При отриманні коду символу знакогенератор формує на своєму виході відповідний двійковий код, який потім перетвориться у відеосигнал. Текстовий режим в сучасних операційних системах використовується тільки на етапі початкового завантаження.

Відеопам'ять

Тут два питання: скільки, і якого типу? Що стосується об'єму, то це – не менше два мегабайт. Причому об'єм необхідної пам'яті безпосередньо пов'язаний з дозволом, з яким планується працювати, і глибиною представлення кольору.

Дозвіл. Кількість пікселів, представлена бітами у відеопам'яті, або дозвіл, що адресується. Відеопам'ять може організовуватися співвідношенням пикселов (бітів) по осі x (пікселі на рядку) до пікселів по осі у (стовпці) і до розміру пам'яті, що відводиться, на представлення глибини кольору. Стандартна відеопам'ять VGA 640 пікселів на 480 пікселів і, зазвичай, з глибиною представлення кольору 8 битий. Чим вище дозвіл, тим більше детальне зображення, і тим більше потрібно зберігати про нього інформації. Але не вся інформація, що зберігається, може бути відображена на дисплеї.

Піксель. Комбінований термін, що позначає елемент зображення, який є найменшим елементом екрану монітора. Інша назва - pel.

Зображення на екрані складається з сотень тисяч пікселів, об'єднаних для формування зображення. Піксель є мінімальним сегментом растрового рядка, який дискретно управляється системою, створюючою зображення. З іншого боку, це координата, використовувана для визначення горизонтальної просторової позиції пікселя в межах зображення. Пікселі на моніторі - це точки яскравого фосфору, що світяться, є мінімальним елементом цифрового зображення. Розмір пікселя не може бути менше крапки, яку монітор може утворити. На кольоровому моніторі крапки складаються з груп тріад. Тріади формуються трьома різними фосфорами: червоним, зеленим і синім. Фосфори розташовуються уздовж сторін один одного. Пікселі можуть відрізнятися розмірами і формою, залежно від монітора і графічного режиму. Кількість крапок на екрані визначаються фізичним співвідношенням ширини до висоти трубки.

І ось чому:

Що стосується типу відеопам'яті, то рекомендується використовувати відеоадаптери з SGRAM, VRAM, WRAM або MDRAM..

Трохи технічних подробиць

Перш ніж стати зображенням на моніторі, двійкові цифрові дані обробляються центральним процесором, потім через шину даних прямують у відеоадаптер, де вони обробляються і перетворяться в аналогові дані і вже після цього прямують в монітор і формують зображення. Спочатку дані в цифровому вигляді з шини потрапляють у відеопроцесор, де вони починають оброблятися. Після цього оброблені цифрові дані прямують у відеопам'ять, де створюється образ зображення, яке повинне бути виведене на дисплеї.

Потім, все ще в цифровому форматі, дані, створюючі образ, передаються в RAMDAC, де вони конвертуються в аналоговий вигляд, після чого передаються в монітор, на якому виводиться необхідне зображення.

Таким чином, майже на всьому шляху проходження цифрових даних над ними проводяться різні операції перетворення, стиснення і зберігання. Оптимізуючи ці операції, можна добитися підвищення продуктивності всієї відеопідсистеми. Лише останній відрізок шляху, від RAMDAC до монітора, коли дані мають аналоговий вигляд, не можна оптимізувати.

Розглянемо докладніше етапи проходження даних від центрального процесора системи до монітора.

1. Швидкість обмін даними між CPU і графічним процесором безпосередньо залежить від частоти, на якій працює шина, через яку передаються дані. Робоча частота шини залежить від чіпсета материнської плати. Для відеоадаптерів оптимальними за швидкістю є шина PCI і AGP. Чим вище робоча частота шини, тим швидше дані від центрального процесора системи дійдуть до графічного процесора відеоадаптера.

2. Ключовий момент, що впливає на продуктивність відеопідсистеми, незалежно від специфічних функцій різних графічних процесорів - це передача цифрових даних, оброблених графічним процесором, у відеопам'ять, а звідти в RAMDAC. Найвужче місце будь-якої відеокарти - це відеопам'ять, яка безперервно обслуговує два головні пристрої відеоадаптера: графічний процесор і RAMDAC, які вічно переобтяжені роботою. У будь-який момент, коли на екрані монітора відбуваються зміни (іноді вони відбуваються в безперервному режимі, наприклад, рух покажчика миші, мигання курсора в редакторові і т.д.), графічний процесор звертається до відеопам'яті. В той же час, RAMDAC повинен безперервно прочитувати дані з відеопам'яті, щоб зображення не пропадало з екрану монітора. Тому, щоб збільшити продуктивність відеопам'яті, виробники застосовують різні технічні рішення. Наприклад, використовують різні типи пам'яті з покращуваними властивостями і просунутими можливостями, наприклад, VRAM, WRAM, MDRAM, SGRAM, або збільшують ширину шини даних, по якій графічний процесор або RAMDAC обмінюються інформацією з відеопам'яттю, використовуючи 32-розрядну, 64-розрядну або 128-розрядну відеошину.

Один з варіантів - використовувати двохпортову відеопам'ять.

Тобто графічний процесор здійснює читання з відеопам'яті або запис в неї через один порт, а RAMDAC здійснює читання даних з відеопам'яті, використовуючи другий незалежний порт. В результаті графічному процесору більше не треба чекати, поки RAMDAC завершить свої операції з відеопам'яттю, і навпаки, RAMDAC більше не потрібно чекати, поки графічний процесор не завершить свою роботу з відеопам'яттю.

Іншим методом для збільшення продуктивності є збільшення розрядності шини, через яку графічний процесор і RAMDAC обмінюються даними з відеопам'яттю.

Але найпоширенішим на сьогоднішній день методом оптимізації роботи відеоадаптерів є застосування підвищеної тактової частоти, на якій працює графічний процесор, відеопам'ять і RAMDAC, що дозволяє збільшити швидкість обміну інформацією між компонентами плати.

RAMDAC

принципи роботи і параметри

RAMDAC має два режими роботи. У першому режимі чіпсет оперує даними колірної гамми або палітри (palletized data). У цьому режимі 8 бітових даних конвертуються в RGB кольору. Кожному з 256 можливих значень кольору відповідає положення в колірній палітрі, яка розміщується в DAC (цифро-аналоговий перетворювач). Колірна палітра формується і зберігається в RAM (пам'ять з довільною вибіркою) - звідси і назва RAMDAC - і може бути завантажена з будь-якою комбінацією квітів. Кожного разу, коли новий пиксел передається в DAC для відображення на екрані, значення передаваних даних використовується як покажчик на положення в палітрі, інформація з палітри, використовується як значення кольору для DAC. Палітра, що зберігається в RAM, має 256 позицій, кожна з яких зберігає 24 бита даних про колір, по 8 битий для кожного з трьох основних кольорів Red, що становлять, Green і Blue. Ємкість RAM соответстует значенню 256 х 24 = 6144 битий або 768 байт. Для RAM використовується стандартна пам'ять, виготовлена за технологією DRAM і інтегрована разом з графічним контроллером і DAC в одну мікросхему, інакше кажучи - в один силікон (кремній).

До речі, технологія включення RAM для DAC в графічний чіпсет не має ніякого відношення до так званої Embedded RAM (Вбудовувана пам'ять). Остання використовується як локальна пам'ять (Local Memory), так само звана буфером кадру.

У другому режимі RAMDAC оперує колірними даними. У цьому режимі (при 16, 24 або 32 битий представленні кольору) даними є RGB колір. Наприклад, при 16 бітовому представленні кольору, 5 біт визначають червоний (Red), 6 битий зелений (Green) і 5 битий синій (Blue) кольори. Для зеленого кольору використовується більше битий, оскільки человечиский око чутливіше до зеленого. При 24 або 32 битий представленні кольору, для кожного з кольорів використовується по 8 битий даних. У цьому режимі дані, що визначають колір, передаються безпосередньо в DAC без використання RAM, тобто не використовуються завантажувані палітри і дані передаються безпосередньо з відеопам'яті. Оскільки RAM не задіяна, то немає і обмеження в 205 MHz для частоти, на якій працює DAC. Єдиним обмеженням є максимально можлива швидкість роботи DAC.

Вибір режиму роботи RAMDAC відбувається так: операційна система Windows95/98/NT або додаток повідомляє про необхідний режим драйвер відеоадаптера, який і переводить RAMDAC в один або інший режим роботи. Утиліта управління режимами монітора (Display Control Panel) в Windows надає можливість вибору між 8, 16 або 24/32 битий представленням кольору. Це і є спосіб, за допомогою якого Windows вибирає режим роботи RAMDAC. Додаток, який запускається на повний екран може встановлювати будь-який, потрібний йому режим, головне, щоб цей режим підтримувався відеоадаптером.

Операційна система або драйвер роблять запит, щоб визначити дозвіл, глибину кольору і частоту оновлення екрану. Драйвер може або реалізувати отриману відповідь, або повернути повідомлення, про те, що запитаний режим не підтримується або неможливий. В цьому випадку операційна система або додаток повинні спробувати запитати установки іншого відеорежиму.

Вибір режиму роботи RAMDAC ніяк не пов'язаний з типом використовуваної відеопам'яті.

Вибір режиму, в которм працює RAMDAC, залежить від кількості можливих квітів. DAC має розрядність 8*8*8 битий, тобто по 8 битий на кожен RGB колір, що відповідає здатності відображати 16777216 (16М) квітів. При 8 бітовому представленні кольору, для палітри може використовуватися 256 з 16 мільйонів можливих квітів. При використанні даних колірної гамми (палітри), активними є тільки 256 квітів, які можуть відображатися на екрані в будь-який довільно вибраний момент часу. Втім, палітра може бути змінена додатком у будь-який момент. При 8 бітовій глибині представлення кольору, за завантаження палітри відповідає кожне застосування. При 16 бітовому кольорі, є фіксований набір квітів і для відображення можуть використовуватися будь-які кольори з 65536 (64К) доступних. При 24 або 32 бітовому кольорі, DAC може відображати будь-який з 16 мільйонів (16М) можливих квітів.

Кожен користувач може відмітити, що при 8 бітовому кольорі будь-яке графічне зображення виглядає не так добре, як при 16 бітовому представленні кольору. Проте, більшість користувачів не можуть відмітити різниці при перегляді добре зробленого графічного зображення в режимі 16 бітове і 32 бітове представлення кольору. Фраза "добре зроблене графічне зображення" означає растровані (dithering - дизеринг) -- процес змішування двох сусідніх квітів, для отримання третього з одночасним забезпеченням плавних переходів між елементами зображення. В результаті використання технології растровані виходять зображення, які виглядають практично однакова в режимах з різною глибиною представлення кольору.

Для 16 бітового представлення кольору потрібно в два рази більше пам'яті, чим для 8 бітового, а для 32 бітового представлення кольору потрібно в два рази більше пам'яті, чим для 16 бітового. У зв'язку з тим, що графічні адаптери мають обмежені об'єми пам'яті, економія цього ресурсу стає одним з пріоритетних завдань. До всього іншого, відображення 32 бітових даних часто відбувається довше, ніж відображення 16 бітових даних. А це вже відноситься до проблеми продуктивності, про що теж не варто забувати. Саме тому звичайному користувачу варто використовувати 16 бітове представлення кольору в Windows95/98/NT.

Користувач або додаток вибирають той режим представлення кольору, який для них найбільш зручний. Текстовий процесор, електронна таблиця і 2D ігри можуть чудово працювати в режимі 8 бітового представлення кольору. Відеофільми, 3D ігри і 3D застосування зазвичай використовують 16 бітовий режим представлення кольору, як компроміс між якістю зображення і продуктивністю. При використанні програм для проглядання високоякісних фотографій, їх редагування, а так само додатків для створення графіки краще всього використовувати 24/32 бітове представлення кольору.

Як же дізнатися, в якому режимі працює RAMDAC? Якщо Ви використовуєте Windows, то у Вас є можливість вибрати глибину представлення кольору між режимами 8, 16 або 24/32 битий. У 8 бітовому режимі використовується палітра, тобто RAMDAC працює із швидкістю 205 MHz, у всіх інших режимах, з іншою глибиною представлення кольору, палітра не використовується і RAMDAC працює із швидкістю 220 MHz. Якщо запускається на виконання додаток, що працює в повноекранному режимі (наприклад, в такому режимі працюють більшість ігор), то тоді само застосування визначає, в якому режимі працюватиме RAMDAC. Іноді додаток вибравши режим роботи повідомляє цю інформацію користувачеві. Але в більшості випадків такого не відбувається.

Користувач може дізнатися, в якому режимі працює RAMDAC, виконавши наступні дії: Знайдіть поверхню, в якій є плавний перехід від одного кольору до іншого (як, наприклад в небі у вас над головою). Якщо перехід від одного кольору до іншого виглядає так, ніби складається з переміжних крапок, що сильно відрізняються за кольором, означає ваше застосування працює в 8 бітовому режимі представлення кольору. Інакше, тобто якщо перехід від одного кольору до іншого дійсно плавний, ваше застосування працює з іншою глибиною представлення кольору. При цьому, не зайвий ще раз нагадати, що середній користувач не може з упевненістю визначить, з якою глибиною представлення кольору він має справу, з 16 або 24/32 битий.

Упевнитися, що заявлені значення швидкості роботи 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, тим паче, що ці значення взаємозв'язані.

Џ Графічні акселератори (прискорювачі) — спеціалізовані графічні співпроцесори, що збільшують ефективність відеосистеми. Їх застосування звільняє центральний процесор від великого об'єму операцій з відеоданими, оскільки акселератори самостійно обчислюють, які пікселі відображати на екрані і які їх кольору.

Зображення, яке ми бачимо на екрані монітора, є таким, що виводиться спеціальним цифроаналоговим перетворювачем RAMDAC (Random Access Memory Digital to Analog Converter) і пристроєм розгортки вміст відеопам'яті. Цей вміст може змінюватися як центральним процесором, так і графічним процесором відеокарти — прискорювачем двомірної графіки (синоніми: 2D-прискорювач, 2D-акселератор, Windows-акселератор або GDI-акселератор). Сучасні віконні інтерфейси вимагають швидкого (за десяті долі секунди) перемальовування вмісту екрану при відкритті/закритті вікон, їх переміщенні і т. п., інакше користувач відчуватиме недостатньо швидку реакцію системи на його дії. Для цього процесор повинен був би обробляти дані і передавати їх по шині з швидкістю, всього в 2-3 рази меншою, ніж швидкість роботи RAMDAC, а це десятки і навіть сотні мегабайт в секунду, що практично нереально навіть по сучасних мірках. Свого часу для підвищення швидкодії системи були розроблені локальні шини, а пізніше — 2D-прискорювачі, які є спеціалізованими графічними процесорами, здатними самостійно малювати на екрані курсор миші, елементи вікон і стандартні геометричні фігури, передбачені GDI — графічною бібліотекою Windows. 2D-прискорювачі обмінюються даними з відеопам'яттю по своїй власній шині, не завантажуючи системну шину процесора. По системній шині 2D-прискорювач отримує тільки GDI-інструкції від центрального процесора, при цьому об'єм передаваних даних і завантаження процесора в сотні разів менші.

Сучасні 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-буфера, який полягає в тому, що проекції всіх точок тривимірної моделі об'єкту на площину зображення сортуються в спеціальній пам'яті (Z-буфері) по відстані від площини зображення. Як колір зображення в даній крапці вибирається колір тієї крапки в Z-буфері, яка найбільш близька до площини зображення, а решта крапок вважається невидимими (якщо не включений ефект прозорості), оскільки вони загороджені від нас найпершою крапкою. Ця операція виконується переважною більшістю 3D-прискорювачів. У більшості сучасних прискорювачів передбачені 16-розрядні Z-буфери, що розміщуються у відеопам'яті на платі.

Закрашення (Shading) додає трикутникам, складовим об'єкт, певний колір, залежний від освітленості. Буває рівномірним (Flat Shading), коли кожен трикутник закрашується рівномірно, що викликає ефект не гладкої поверхні, а многогранника; по Гуро (Gouraud Shading), коли інтерполюються значення кольору уздовж кожної грані, що надає криволінійним поверхням гладшому вигляду без видимих ребер; по Фонгу (Phong Shading), коли інтерполюються вектори нормалі до поверхні, що дозволяє добитися максимальної реалістичності, проте вимагає великих обчислювальних витрат і в масових 3D-прискорювачах поки не використовується. Більшість 3D-прискорювачів уміють виконувати закрашення по Гуро.

Відсікання (Clipping) визначає частину об'єкту, видиму на екрані, і обрізає все остальное, щоб не виконувати зайвих розрахунків.

Розрахунок освітлення. Для виконання цієї процедури часто застосовують метод трасування променів (Ray Tracing), що дозволяє врахувати відображаться світла між об'єктами і їх прозорість. Цю операцію з різною якістю уміють виконувати всі 3D-прискорювачі.

Накладення текстур (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-прискорювача в іграх і інших програмах існує декілька інтерфейсів прикладного програмування, або API (Application Program Interface), що дозволяють додатку стандартним чином використовувати можливості 3D-прискорювача. На сьогоднішній день існує безліч таких інтерфейсів, серед яких найбільш відомі Direct3D (Microsoft), OPENGL (Silicon Graphics), Glide (3Dfx), 3DR (Intel), Heidi (Autodesk), RENDERGL (Intergraph).

Інтерфейс 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).

Інтерфейс Glide розроблений компанією 3Dfx Interactive для вироблюваних нею прискорювачів Voodoo. Glide здобув широке розповсюдження серед виробників комп'ютерних ігор, хоча, на відміну від OPENGL, Glide не є універсальним 3D API і підтримує тільки можливості Voodoo.

В даний час найбільш відомі наступні 3D-прискорювачі: ATI 3D Rage Pro і 3D Rage 128; Intel i740; Number Nine Ticket to Ride IV; Mitsubishi 3DPro/2mp, Matrox G100 і G200; S3 Savage3D; Riva128 і RIVATNT; Rendition V2100 і V2200; 3Dlabs Permedia 2 і 3; 3Dfx Voodoo, Voodoo2 і Voodoo Banshee; NEC POWERVR PCX2. На базі цих чіпсетів проводяться власне відеокарти, причому не тільки перерахованими компаніями, а і компаніями, що не випускають власні графічні процесори, наприклад ASUSTek, Creative Labs або Diamond Multimedia. Сучасні 3D-відеокарти володіють і функціями прискорення двомірної графіки. Виключенням є прискорювачі на базі 3Dfx Voodoo і Voodoo2, які підключаються до виходу звичайної відеокарти перед монітором спеціальним зовнішнім сполучним кабелем. Таке рішення погіршує якість 2D-зображення, і до того ж неможлива робота у віконному режимі. У 3Dfx Voodoo Banshee від цієї схеми відмовилися, і вона є повноцінним 2D/3D-ускоритель.
скачати

© Усі права захищені
написати до нас