Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ВСТУП3.docx
Скачиваний:
31
Добавлен:
01.05.2015
Размер:
39.35 Кб
Скачать

1.2. Історія розвитку відеосистем

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

Перший комп’ютер IBM PC був оснащений відеоадаптером MDA (Monochrome Display Adapter). Відеосистема була призначена для роботи в текстовому режимі – відображалось 25 рядків по 80 символів в кожному рядку.

Наступним кроком був відеоадаптер CGA (Color Graphic Adapter). Це перша кольорова модель для IBM PC. Адаптер CGA дозволяв працювати в кольоровому текстовому та графічному режимах; далі ми будемо розглядати тільки графічні режими відеоадаптерів. Графічних режимів для CGA було два: чорно-білий 640х200 пікселів та кольоровий 320х200 пікселів.

У 1984 році з'явився адаптер EGA (Enhanced Graphic Adapter). Виникає графічний 16-ти кольоровий відеорежим 640х350 пікселів.

У 1987 році з’явилися відеоадаптери MCGA (Multi-color Graphic Array) та VGA (Video Graphic Array). Вони забезпечували вже 256–ти кольорові відеорежими. Більш досконалим був адаптер VGA – він став найбільш популярним. Адаптер VGA мав 256-ти кольоровий графічний відеорежим з розмірами 320х200 пікселів. Він також має 16-ти кольоровий режим 640х480 пікселів.

Подальший розвиток відеоадаптерів для комп’ютерів типу IBM PC пов’язаний з підвищенням роздільної здатності та кількості кольорів. Тепер на комп’ютерах IBM PC з процесором Pentium використовуються багато типів відеоадаптерів. Всі відеосистеми растрового типу. Деякі з них дозволяють встановлювати глибину кольору 32 біт на піксель при розмірах растра 1600х1200 пікселів й більше. Існують стандарти на відеорежими, які встановлені VESA (Video Electronic Standards Association).

Параметри зображення обумовлюються не тільки моделлю відеоадаптера, але й обсягом встановленої відеопам’яті. Відеопам’ять персонального комп’ютера (VRAM – Video RAM) зберігає растрове зображення, яке показується на екрані монітора. Зображення на моніторі повністю відповідає поточному вмісту відеопам’яті. Відеопам’ять постійно сканується з частотою кадрів монітору. Запис нових даних до відеопам'яті відразу змінює зображення на моніторі. Необхідний обсяг відеопам'яті обчислюється як площина растру екрану в пікселях, помножена на кількість біт (або байтів) на піксель.

У відеоадаптерах перших зразків кількість відеопам'яті обчислювалася в кілобайтах, наприклад, адаптер CGA мав 16 кбайт. У сучасних відеоадаптерах рахунок ведеться на мегабайти. Як правило, обсяг відеопам'яті кратний ступеню двійки – 1, 2, 4, 8, 16, 32, 64 Мбайт. Спостерігається тенденція до збільшення обсягів відеопам'яті – відповідно до збільшення роздільної здатності та глибини кольору відеосистем.

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

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

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

Використання програмістами графічних можливостей відеосистеми може здійснюватися різноманітно. По перше, через простіші операції, такі як визначення графічного відеорежиму, виведення пікселя на екран. По друге, можна використовувати функції операційної системи. Різноманітні операційні системи можуть надавати різні можливості. Наприклад, в MS DOS графічних функцій майже не було, однак програмісту був наданий вільний доступ до апаратних ресурсів комп’ютера. В швидкодіючих графічних програмах часто використовувався безпосередній доступ до відеопам'яті. На відміну від цього, операційна система Windows забороняє прикладним додаткам безпосередній доступ до апаратних ресурсів, проте можна застосовувати декілька сотень графічних функцій операційної системи – Windows API. По третє, можна використовувати спеціалізовані графічні інтерфейси, які підтримують апаратні можливості сучасних графічних процесорів.

Одним з найбільш відомих графічних інтерфейсів є OpenGL. Цей інтерфейс у вигляді бібліотеки графічних функцій був розроблений Silicon Graphics та підтримується багатьма операційними системами (в тому числі й Windows), а також виробниками графічних акселераторів. Інтерфейс OpenGL для графічного відображення використовує взаємодію типу клієнт-сервер.

Іншим відомим графічним інтерфейсом є DirectX з підсистемою тривимірної графіки Direct3D, а також підсистемою Direct Draw, яка забезпечує, насамперед, безпосередній доступ до відеопам'яті. Цей інтерфейс розроблений Microsoft та призначений тільки для Windows.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]