В первой части мы поговорили о зарождении дискретных видеокарт: о том, что они могли, как подключались и сколько стоили. Теперь же перейдем к, пожалуй, самому интересному периоду развития видеокарт — к 90-ым годам: уже появляются первые 3D-игры, и тут же становится понятно, что программный рендеринг не тянет их и нужно привлекать видеокарты, что и было сделано — в 1995 году, в один год с выходом легендарной PlayStation 1, появился первая доступная 3D-видеокарта — S3 Virge.
S3 ViRGE — первая ласточка 3D-мира
Забегая наперед — это была именно видеокарта, то есть она могла работать и с 2D, и с 3D — это было редкостью по тем временам, но об этом ниже. Правда, с 3D она работала плохо — из-за новой по тем временам билинейной фильтрации текстур (в 2D она была по понятным причинам не нужна) производительность серьезно падала. Но с 2D она справлялась без проблем, качественно отрисовывая, к примеру, интерфейс Windows.
Характеристики же ее были достаточно скромны — частота видеочипа была порядка 60 МГц, а памяти было до 4 МБ, причем память можно было наращивать самому. Да-да, на видеокарте было распаяно 2 МБ и были слоты, куда можно было вставить еще 2:
При этом разрядность шины памяти была аж целых 64 бита — к слову, такая же шина используется даже сейчас в low-level игровых видеокартах, к примеру — в GT 1030.
Достаточно большим плюсом видеокарты была всеядность, она могла работать со всеми графическими API — не только с Direct3D и OpenGL, но и с RenderWare и Brender, а также имела собственный API — S3D (особой популярности он, правда, не получил). К тому же эта видеокарта имела телевизионный выход, так что была универсальной при выводе картинки.
Из-за проблем при работе с 3D многие стали подключать к ней уже чисто 3D-видеоускоритель 3dfx Voodoo1, тем самым убивая двух зайцев — ViRGE отлично работает с 2D, Voodoo1 — с 3D, тандем же получается универсальным.
3dfx Voodoo1 — начало линейки легендарных видеоускорителей
3dfx была самым молодым игроком на рынке видеокарт — компания была основана 3 выходцами из Silicon Graphics, которые при уходе не забыли прихватить с собой разработки новых видеочипов. Куда могла податься молодая компания, умеющая в графику? Правильно, в производство видеочипов для игровых автоматов. Причем они преуспели так, что на них стали обращать внимание производители игровых приставок. На рынок ПК они выходить не хотели, однако в 1996 году цены на быструю память EDO упали до терпимого уровня, и 3dfx решили выпустить собственный видеоускоритель с этим типом памяти.
Почему именно видеоускоритель, и в чем разница с видеокартой? Видеокарта должна уметь и готовить картинку, и выводить ее на экран. Видеоускоритель же умеет только рендерить картинку — выводить ее нужно через видеокарту. 3dfx, да и другие компании, решили так — у каждого человека уже есть видеокарта, которая отрисовывает интерфейс ОС. Так зачем мучиться и впихивать на плату с 3D-видеочипом еще и чип для работы с 2D, если он есть у пользователей? Поэтому можно от него отказаться — это и цену снизит, и разрабатывать видеоускоритель проще. Ну а для вывода картинки просто будем подключать видеоускоритель к видеокарте проводом VGA. Да, громоздко, но зато дешево — и многие это оценили (на картинке две Voodoo в SLI, но суть та же):
И, как я уже писал выше, с видеокартой для Voodoo1 проблем не было — ViRGE подходил идеально, так что связка его с «вуду» была очень популярна. Причем, что достаточно забавно, по цифрам характеристики Voodoo были хуже — видеочип с частотой 50 МГц и те же 4 МБ памяти. Но 3dfx брали не частотой, а оптимизацией и дополнительными вычислительными блоками: к примеру, текстурным, который сразу решал все проблемы с фильтрацией текстур, которые были у S3. Также специально для своих видеокарт 3dfx выпустила новый API — Glide. Хотя он был основан на открытом OpenGL, из-за хорошей заточки под видеокарты Voodoo (использовались геометрические и текстурные преобразования), а также максимального упрощения (есть только то, что нужно для 3D-игр, даже цвет ужали до 16-битного: впрочем, качество было таким, что могло соперничать с 24-битным цветом) можно было получать существенно лучшую графику, чем у конкурентов:
А конкуренты не дремали — в этом же 1996 году компания ATI выпустила свою видеокарту Rage.
ATI Rage I и II — красные наступают
ATI появилась аж в 1985 году как производитель видеокарт для крупных игроков рынка — таких, как IBM и Commodore. Поэтому несколько странно, что первую 3D-видеокарту они выпустили позже других, более того — наделав массу ошибок. Судите сами — Rage I был основан на чисто 2D-ядре March64 с блоками для ускорения MPEG-1 и 3D. Понятное дело, что такая связка с 3D работала еще хуже, чем ViRGE, поэтому ATI в спешном порядке выпускает вторую версию видеокарты — Rage II, которая таки стала винрарной.
Во второй версии был доработан видеочип — добавили блоки фильтрации текстур, а также аппаратную возможность альфа-смешивания. Теперь он назывался March64 GUI и имел частоту в 60 МГц. Видеокарта могла работать не только с EDO, но и с SGRAM — эту память можно назвать дедушкой GDDR. Объем памяти составлял от 2 до 8 МБ, а пропускная способность была аж целых 480 Мб/с. Как и ViRGE, Rage имела поддержку всех текущих API, кроме Glide (ибо на тот момент он был еще закрыт), а драйвера были как под Windows (95 и NT, хотя под последнюю они были нестабильны — кто бы сомневался), так и под Mac OS 9, OS/2 и даже Linux! К слову, именно с этого момента началась «любовь» Apple и ATI/AMD, которая продолжается и по сей день — видеокарты Rage ставились в некоторые макинтоши того времени.
Nvidia RIVA 128 — зеленые наступают
Nvidia — крупнейший на данные момент производитель видеокарт, и многие думают, что у них долгая и интересная история. А вот и нет — компания появилась лишь в 1992 году, и уже в 1995 году представили свой первый видеочип NV1. Увы — первый блин был комом: поддержки Direct3D изначально не было, а когда Nvidia попыталась ее прикрутить, то получилось настолько плохо, что даже решили драйвера с ним не выпускать, и тихо забыть про этот чип. А ведь задумка была интересная — рендеринг был основан на квадратичном маппинге текстур: это было просто реализовать, но, увы, это не поддерживалось в Direct3D, а просить Microsoft сделать поддержку у Nvidia тогда не было возможности (да и в Direct3D были проблемы по-серьезнее, так что Microsoft в любом случае отказалась бы помогать).
Поняв, что из толпы выделяться не стоит, Nvidia сделала новую карточку RIVA 128, уже на ядре NV3 и с поддержкой OpenGL 1 и Direct3D 5. И это был чистый вин в 1997 году — кристалл GPU был выполнен по 350 нм техпроцессу и имел частоту аж в 100 МГц, память была новейшего стандарта SGRAM, ее было 4 МБ, а из-за 128-битной шины скорость оказывалась 1.6 Гб/с — рекорд по тем временам, Nvidia решила это даже в названии показать. Также видеокарта (а это была именно она, да и вообще — Nvidia не производила видеоускорителей) подключалась по новейшему порту AGP x1 (хотя были и варианты с «традиционным» PCI). Из-за быстрой памяти максимальное разрешение составляло 960х720 — к примеру, у Voodoo1 оно было «всего» 640х480.
В начале 1998 года Nvidia выпустила улучшенный вариант видеокарты — RIVA 128 ZX. Основным изменением стал вдвое увеличенный объем видеопамяти — до 8 МБ, а также подключение теперь было через интерфейс AGP x2. К слову — RIVA 128 стали первыми видеокартами, где видеочип стали дополнительно охлаждать — пока еще простым радиатором.
Увы — проблем тоже хватало. Будучи огорченными тем, что NV1 не работает толком с Direct3D, Nvidia бросили все силы на то, чтобы RIVA с ним работала хорошо. Это им удалось, но вот OpenGL оказался заброшен, так что все прелести новой видеокарты могли оценить только пользователи Windows. Вторая проблема — видеокарта не могла программно работать с движком Unreal, что вылилось в проблемы с играми, созданными на нем. Ну и последний камень в огород Nvidia — их видеокарты не могли поддерживать Glide, который игроделы к тому времени оценили и стали выпускать патчи в играм, серьезно улучшающие графику на видеокартах от 3dfx.
В итоге к 1998 году расклад на рынке таков: 3dfx и Nvidia — лидеры. С некоторым отставанием от них идет ATI, ну и совсем в конце плетется S3. Чем закончилось это противостояние — поговорим уже в следующей части статьи.