2.7.3. Графические ускорители
Современная видеокарта – это не просто устройство, которое хранит в своей памяти экранный образ и формирует сигнал для монитора. Теперь это компьютер в миниатюре со своим микропроцессором, способным производить вычисления и управлять тем, что и как строится на экране. Способность видеокарты выполнять вычисления и построения называют аппаратным видеоускорением (когда видеокарта такими свойствами не обладает, нагрузка ложится на основной процессор, и в этом случае говорят о программном видеоускорении). Для большинства современных компьютерных игр не просто желательно, а даже необходимо наличие у видеоадаптера ускорительных функций. Чтобы видеокарта могла выполнять какие-то вычисления, она, разумеется, должна действовать по заданным алгоритмам. И вся хитрость здесь состоит в том, что программисты, создающие программы, должны об этих алгоритмах знать заранее. Лет пять назад нормальной была ситуация, когда изготовители видеокарт вводили в них ускорительные функции, но программ, которые могли бы их использовать, просто не существовало. Обычно в таких случаях к видеокарте прилагалась на отдельном диске какая-нибудь одна-единственная игра, при взгляде на которую у покупателя захватывало дух, но со всеми другими программами видеокарта работала, как обычная. Так появился термин оптимизация видеоускорения. В подобных случаях говорили, что данная программа оптимизирована для данной видеокарты или, наоборот, видеокарта оптимизирована для данной программы, т. е. создатели видеокарты и создатели программы работали рука об руку.
Пользы потребителю от такого ускорителя не было никакой, ведь никто не будет работать с одной-единственной программой, тем более, если это игра. Она быстро надоест. Тогда производители видеокарт решили найти такую программу, с которой работают большинство пользователей, и оптимизировать свои видеоускорители под нее. Искать долго не пришлось – это всем хорошо знакомая система Windows. Ее окна и элементы этих окон совершенно одинаковы на десятках миллионах компьютеров. Видеокарты, позволяющие ускорить отображение стандартных элементов Windows, получили название 2D-ускорителей (ускорителей двумерной, плоской графики).
2D-ускорители действительно ускорили работу с операционной системой и ее приложениями. А все, что не укладывалось в рамки окошек Windows (в первую очередь это были мультимедийные программы и компьютерные игры), отнесли к области трехмерной (3D) графики. ЗD-ускорителъ занимается построением изображения из огромного количества небольших треугольников, определяет, как они взаимодействуют друг с другом, как они затеняют друг друга, затем закрашивает их или заливает заранее заготовленными текстурами.