Итак, снова тема Quake3 Arena на пике популярности. Предыдущий раз, когда страсти вокруг этой еще не выпущенной игры были также накалены, случился в мае, ознаменованном выходом первой открытой демо-версии Quake3 Arena, Q3Test версии 1.05. Тогда эта тема не сходила с первых страниц не только геймерских сайтов. Многие источники массовой информации попытались приспособить Q3test и для своих целей — для измерения производительности современных видеокарт, но потерпели неудачу. Встроенный в эту программу бенчмарк работал некорректно и выдавал неправильные результаты, зависящие не столько от мощности тестируемой системы, сколько от взаимного расположения небесных светил. :)
Тогда тестовые лаборатории так и не получили современный инструмент измерения производительности от id Software, которая традиционно производит игры, становящиеся де-факто стандартными бенчмарками, показывающими игровую производительность системы. Движки, разрабатываемые этой конторой, используются настолько большим количеством создателей игр, что производители видеокарт нередко выпускают специальные драйвера под Quake и оптимизируют производительность именно для этого движка. Quake-игры практически единственные, которые используют API OpenGL, добиваясь фантастической реалистичности и потрясающих воображение эффектов. Таким образом, полноценное тестирование без применения Q3Test стало попросту невозможным.
Но вот, пришел праздник и на нашу улицу. Прошедшие две недели были ознаменованы выходом сначала версии 1.06 Q3Test, а затем и версии 1.07, в которых наконец-то корректно заработал встроенный бенчмарк. Мы не преминули этим воспользоваться, и протестировали на нем все современные видеоакселераторы. По итогам этого теста теперь мы сможем говорить о перспективах современных видеокарт в свете скорого выхода долгожданного Quake3 Arena, который, несомненно, станет непревзойденным блокбастером среди компьютерных игр.
Как и обычно, мы проводили тестирование на двух платформах — Slot 1 и Socket 7. Конфигурации тестовых систем приведены ниже.
Slot 1 система:
- процессор Intel Pentium III 500;
- системная плата ASUS P2B-B (i440BX);
- оперативная память 128 Мбайт PC100;
- жесткий диск Quantum Fireball CR 6.4Gb;
- операционная система Windows 98.
Socket 7 система:
- процессор AMD K6-2 450;
- системная плата Chaintech 5AGM2 (VIA MVP3);
- оперативная память 128 Мбайт PC100;
- жесткий диск Quantum Fireball CR 6.4Gb;
- операционная система Windows 98.
Теперь — об ускорителях, которые мы протестировали.
- 3dfx Voodoo3 3000 16Mb (драйвера версии 1.01.11 ICD OpenGL). Видеокарта на чипсете 3dfx Voodoo3 3000, работающем на частотах 166/166 МГц. Voodoo3 имеет одноконвейерную архитектуру 3D-рендеринга, однако имеет два текстурных процессора. Именно поэтому у плат семейства 3dfx Voodoo3 режим мультитекстурирования дает сильный прирост в производительности. По умолчанию Voodoo3 обеспечивает скорость заполнения до 166 мегапикселей в секунду.
- Matrox Millennium G400 32Mb (драйвера версии 5.13.020). Чипсет MGA G400, работающий на частоте 125/166 МГц имеет сложную 256-битную архитектуру с двойной шиной, поэтому однозначно сказать о числе конвейеров нельзя. Тем не менее, по логике исполнения шины это двуконвейерная архитектура, поэтому режим мультитекстурирования в принципе возможен. Карта на этом чипсете может достигать скорости заполнения сцены до 250 мегапикселей в секунду.
- PowerColor X-Demon 32Mb (драйвера 08.10.02 reference). Эта видеокарта на чипстете S3 Savage4 Pro (частота 110/125 МГц) имеет одноконвейерную архитектуру, хотя текстурных модуля все-таки два. Поэтому режим мультитекстурирования возможен, однако, как показали наши предыдущие исследования, никакого выигрыша у Savage4 он не дает. Чипсет предусматривает поддержку пока не нашедшей широкого применения технологии сжатия текстур S3TC. Скорость заполнения сцены может достигать 125-143 мегапикселей в секунду.
- Creative 3D Blaster Riva TNT2 Ultra 32Mb и видеокарта Hercules Dynamite TNT2 Ultra 32Mb (драйвера 2.08 reference). Чипсет nVidia Riva TNT2, на котором выполнены данные видеокарты может работать на двух стандартных частотах — 125/150 МГц или 150/183 МГц в Ultra-версии. TNT2 имеет двуконвейерную архитектуру (за такт обрабатываются два пикселя). Режим мультитекстурирования поддерживается, однако, при этом скорость обработки пикселей падает вдвое, так как при этом TNT2 функционирует как одноконвейерная система. Тем не менее, возрастание скорости наложения текстур в этом случае компенсирует этот недостаток и общая производительность в режиме мультитекстурирования все же немного больше, чем в режиме без мультитекстурирования. Чипсет обладает скоростью заполнения сцены в пределах 250-300 мегапикселей в секунду.
Таким образом, в нашем тестировании приняли участие видеокарты на всех графических чипсетах нового поколения, которые мы использовали как на штатных частотах, так и при наиболее характерном разгоне для данного чипсета.
Если сделать предварительный анализ возможностей протестированных чипсетов, то сразу выделяются два основных соперника — 3dfx Voodoo3 3000 и nVidia Riva TNT2 (Ultra). Первый чипсет значительно выигрывает в режиме мультитекстурирования, который поддерживается Quake3, второй может дать хорошие результаты, исходя из его потенциально более сильного fillrate (скорости заполнения сцены). Теоретически, Matrox MGA G400 может оказаться также где-то рядом. А вот прогнозы насчет Savage4 можно дать гораздо более скромные, как и его характеристики.
По результатам наших предыдущих тестов как в OpenGL, так и в Direct3D практически всегда первой по скорости была nVidia Riva TNT2 Ultra, а следом шла 3dfx Voodoo3 3000. Matrox MGA G400 работал практически на уровне Voodoo3, обычная версия nVidia Riva TNT2 слегка отставала, а самую низкую производительность показывали видеокарты на S3 Savage4 (Pro).
Таким образом, вопрос о раскладе сил в Quake3 достаточно интересен и может повлиять на выбор видеоускорителя.
Но вернемся к нашим баранам, а именно к fps. Для измерения производительности мы будем пользоваться демо q3testdemo1.dm3, как наиболее полноценно загружающей видеоакселератор и качественно моделирующей игровую обстановку. Для того чтобы прогнать этот тест, необходимо в игре вызвать игровую консоль, для чего нажать на клавиатуре тильду (~), после чего в консоли набрать следующие команды:
s_initsound 0
snd_restart
timedemo 1
demo q3testdemo1
Первые две команды отключают в игре звуковое сопровождение, чтобы не загружать систему дополнительными действиями, не связанными напрямую с 3D-графикой.
При тестировании режим Sync Every Frame (Vsync — синхронизация по частотам вертикальной развертки видеокарты с монитором) был выключен.
Весь процесс исследования мы разбили на четыре комплекса тестов:
- Fastest. Тест при 16-битном рендеринге с использованием 16-битных текстур (переключатель детализации текстур находится в 3-м, предпоследнем положении), при низкой геометрической детализации (Low geometrical detail) и при выключенных эффектах. Этот тест дает наибольшие fps при посредственном качестве изображения.
- Fast. Тест при 16-битном рендеринге с использованием 16-битных текстур (бегунок детализации текстур находится в 3-м положении), при низкой геометрической детализации (Low geometrical detail) и при включенных игровых эффектах. Этот тест дает высокую скорость работы игры при удовлетворительном качестве изображения.
- Normal. Тест при 16-битном рендеринге с использованием 16-битных текстур (детализация текстур на высшем уровне), при высокой геометрической детализации (High geometrical detail) и при включенных игровых эффектах. Этот тест дает наивысшее качество в 16-битном цвете и является предельным для карт на чипе 3dfx Voodoo3.
- High Quality. Тест при 32-битном рендеринге с использованием 32-битных текстур при высшей степени детализации как текстур, так и геометрии (при включенных игровых эффектах). Этот тест дает нам самое высокое качество картинки в игре.
Таким образом, мы охватываем весь диапазон параметров в Quake3, исследуя как экстремальные, так и обычные значения установок в этой игре.
Перед тем как перейти непосредственно к результатам, я хочу остановиться на одной из опций в Quake3 - выборе способа фильтрации: билинейной или трилинейной. Мы исследовали тщательно работу карт с применением обеих фильтраций, и я могу сказать, что на большинстве ускорителей, кроме nVidia Riva TNT2, качество картинки в Quake3 от включения трилинейной фильтрации практически не изменяется.
Вот как выглядит трилинейная фильтрация на TNT2:
Отличие есть, на скриншоте с трилинейной фильтрацией имеется больше размытостей, однако, существенного улучшения восприятия картинки это не дает, а некоторым даже понравится изображение с билинейной фильтрацией. Тем не менее, прирост в скорости при отключении трилинейной фильтрации на той же TNT2 достаточно существенный и составляет 5-8%.
Для 3dfx Voodoo3 3000, Matrox MGA G400 и S3 Savage4 приводить скриншоты нет необходимости, поскольку визуальных отличий при использовании трилинейной фильтрации и без нее, просто нет. Имеется лишь разница в скоростях работы. У Matrox MGA G400 и S3 Savage4 производительность при работе с трилинейной фильтрацией падает на 5-7%. А у 3dfx Voodoo3 эта функция, похоже, вообще не реализована в драйверах, поскольку результаты при обоих типах фильтрации оказываются идентичными.
Исходя из всего вышеизложенного, мы приняли решение тестировать видеокарты при отключенной трилинейной фильтрации (то есть, при использовании билинейной фильтрации), поскольку визуальное качество эта функция не улучшает.
Теперь перейдем непосредственно к результатам.
Система на Intel Pentium III.
Рассмотрев эти результаты, мы можем констатировать явную победу nVidia Riva TNT2 Ultra во всех ее режимах. Следом за ней идут nVidia Riva TNT2 и, как ни странно, Matrox MGA G400. Раньше мы говорили о слабости их ICD драйвера у G400, но выход его новой версии ознаменовал значительное увеличение скорости и улучшение качества изображения.
Радовавшая своей скоростью в Direct3D, а также в OpenGL при использовании мини-драйвера, 3dfx Voodoo3 3000 тут категорически сдала свои позиции и оказалась на предпоследнем месте, правда на низких разрешениях все же опережая Matrox MGA G400. Да, с написанием нормального ICD OpenGL драйвера 3dfx долго тянула, первый вариант получился вообще бездарным, а версия 1.02.11, который вышла буквально на днях, хоть и повысила скоростные показатели 3dfx Voodoo3, тем не менее, все равно не может порадовать Voodoo-фанатов.
Ну а на счет скорости S3 Savage4 Pro просто говорить не хочется. Это ниже уровня играбельности во всех режимах! Так что поведение S3, которая до сих пор не удосужилась написать полноценный ICD OpenGL достойно порицания.
Таким образом, можно отметить хороший уровень играбельности у большинства карт кроме S3 Savage4 в разрешениях 800х600 и 1024х768 при 16-битной глубине цвета, а в 32-битном цвете хорошая играбельность наблюдается только у nVidia Riva TNT2 Ultra.
Система на К6-2.
По результатам тестирования на Socket 7 — системе мы наблюдаем и вовсе трагичную картину. Заметьте, что у нас был почти самый мощный из Socket 7 процессоров, мощнее которого разве что К6-III, который, кстати, дает незначительный прирост в играх типа Quake, однако играбельность находится на приемлемом уровне в гораздо меньшем числе режимов. Только в 800х600 на 3dfx Voodoo3 3000 и nVidia Riva TNT2 Ultra при высоком качестве графики и наличии всех игровых эффектов можно говорить о приемлимых fps. Конечно, при отключении высокой детализации и игровых эффектов играбельность резко возрастает, однако это будет интересно разве только профессиональным Quakeрам, которым нет нужды пристально рассматривать красоты детали окружающей обстановки. Что же, вот и появились первые игры, для которых Socket 7-платформы уже мало.
Перейдем теперь к анализу качества изображения.
3dfx Voodoo3 3000
Как мы можем видеть, при низкой детализации налицо размытие изображения, потеря четкости контуров узоров, а также упрощение окружающей обстановки (например, видно, что цилиндрическая ниша за телепортом стала многоугольной). Однако, заметим, что реальная играбельность на существующих драйверах у 3dfx Voodoo3 3000 будет только при низкой детализации.
В последних драйверах 3dfx ввела разную реализацию дизеринга (эффекта сглаживания резких переходов между цветами) при альфа-смешении (то есть, при формировании прозрачных и полу-прозрачных объектов). Эти способы, в терминах 3dfx, называются Sharper и Smoother. С точки зрения скорости работы никаких отличий между ними нет — карта показывает одинаковую производительность при любом из этих способов. Есть разница только в визуальном качестве. Ниже мы приводим две серии скриншотов, демонстрирующих эти способы реализации дизеринга:
Как говорится, кому что нравится, тот это и выбирает. На одном из скриншотов видна сеточка, а на другом более резкие переходы между цветами. Кстати сказать, присущее картам на чипсетах от 3dfx размытие картинки в Quake3 сказывается не так сильно, как, например, на Glide-играх.
Matrox MGA G400
В 16-битных разрешениях качество изображений на высоком для 16-битного цвета уровне, Matrox Millennium G400 имеет должную играбельность и при высокой степени детализации как геометрии, так и текстур.
Что касается 32-битной картинки, то, конечно, и здесь качество картинки очень высокое. Причем, в разрешении 800х600 у MGA G400 имеется приличный уровень играбельности, что несомненно дает этому чипсету большой плюс. Кстати Matrox обещает ускорить их OpenGL-драйвер еще на 40%.
nVidia Riva TNT2
У карт на nVidia Riva TNT2, особенно Ultra-версии, уровень играбельности самый высокий и достаточен даже в разрешении 1024х768 при 32-битной глубине цвета с максимально возможными эффектами.
S3 Savage4 Pro
Мы тестировали этот чипсет и в режиме со сжатыми текстурами, однако, данные по скоростным показателям мы не привели из-за того, что в этом режиме карта работала крайне нестабильно, сказывается опять-таки сырой ICD OpenGL драйвер.
А вот обратить внимание на самое четкое, на мой взгляд, изображение, стоит. Правда, к очень большому сожалению, OpenGL драйвер реализован отвратительно. Посмотрите хотя бы на отсутствие цифр внизу. А чтобы узнать результаты тестирования после прогона Q3testdemo1 приходилось вообще переключаться на другую задачу, а потом обратно в Quake3. Иначе, ни начального меню, ни консоли просто не видно.
Выводы
Что же мы можем сказать по итогами наших исследований? Прежде всего, отметим факт отсутствия поддержки в Quake3 технологий 3DNow! и SSE. Будем надеяться, что в будущем она появится, тогда скорее всего и "ставки" Socket 7 систем несколько поднимутся. А на нынешних системах с К6-2 в Quake3 играть при приличном качестве изображения трудновато.
Далее. Мы должны отметить, что фирма 3dfx сделала неподобающе медленный ICD OpenGL драйвер. В Quake2 мы видели великолепную скорость при использовании мини-драйвера, поэтому будем надеяться на программистов 3dfx, которые могут поправить это положение с драйверами.
А фирма S3 вообще может написать на всех своих чипсетах "Quake3 Incompatible". Очень даже неплохой чипсет Savage4, дающий прекрасное качество, но низкую скорость и безобразную поддержку в OpenGL, к сожалению, нас разочаровал.
С радостью отмечаем, что Matrox заметно улучшила свой OpenGL драйвер. Эта тенденция может служить основанием для подтверждения выхода этой фирмы из OpenGL-кризиса.
Но самым лучшим с точки зрения Quake3 стала nVidia Riva TNT2, особенно ее вариация Ultra. Отрыв по скорости настолько велик, что трудно себе представить, что до выхода чипов будущего поколения кто-то сможет ее обогнать.
Каковы же перспективы? Распределение мест между видеокартами может измениться только в случае выхода более оптимизированных драйверов. Уверены, что у 3dfx Voodoo3 есть шанс подняться выше по скоростным показателям, а также есть определенная надежда и на Matrox G400, под который можно ожидать более оптимизированных и скоростных драйверов. Что касается чипсетов от nVidia, то мы просто не сомневаемся, что улучшения будут и дальше, самый отлаженный на сегодня OpenGL драйвер будет постепенно совершенствоваться и не сдаст своих позиций.
В конце нашего обзора хочу отметить, что для того, чтобы современные видеокарты могли показать всю свою силу, нужна поддержка мощного центрального процессора. При использовании менее скоростного CPU в Quake3 теряется играбельность. Поэтому перед тем, как покупать видеокарту последнего поколения, задумайтесь и о достаточно мощном процессоре и о достаточном объеме оперативной памяти.