Главная > Компьютеры и комплектующие > Видеосистема > |
FAQ по OpenGL в Linux |
Тестирование и рекомендации по установки Quake2 и Quake3 на TNT и Banshee
Алексей Сорокин
Для начала, если кого-либо интересуют общие сведения поддержки 3D-графики в Linux (и в Unix системах вообще), то могу посоветовать начать вот с этой страницы. Кроме того, ID Software (персонально Dave 'Zoid' Kirsch, Official Quake Unix Port Administrator еще со времен Quake I) в каждом релизе предупреждает, что официально поддерживаются только Voodoo Graphics и Voodoo2. Это стоит учесть при интерпретации приводимых далее результатов.
Условия тестирования
Cравнивались 2 видеоплаты: Asus V3400 (Riva TNT) и Asus V3200 (Banshee). Обе карты имеют по 16 Мб локальной памяти, на обоих установлен кулер. Карта v3400 имеет tv in/out, но поддержка этих возможностей в Linux пока отсутствует.
Никакого разгона ни карт, ни тестовой системы в целом не производилось. Целью сравнения было получение общего представления о gameplay под Linux.
Hardware: PII-350, 128 Mb PC100 SDRAM, m/b Tyan Tsunami ATX (BX chipset), sound - Crystal CS4235.
Software:
Настройки Quake2:
Настройки Q3test:
Рекомендации по установке TNT
Бинарники спокойно встают на систему, хотя я бы все же рекомендовал самостоятельно скопировать файлы в нужные места, не пользуясь прикладываемым shell-овским скриптом инсталляции. Карта на TNT под Linux способна работать с использованием Frame Buffer device, но только с драйвером vesafb. Это значит, что пересобрав ядро вы сможете получить консоль 800x600x32 на 60Hz, но не сможете увеличить частоту (если вы никогда не пересобирали ядро самостоятельно, то лучше пройдите сей процесс под руководством ближайшего гуру, ибо имеется большое число тонкостей). svgalib практически не поддерживает TNT. Теоретически конечно есть в конфиге строчка 'chipset VESA', но мне не удалось получить ни одного приемлемого работоспособного режима.
Рекомендации по установке Banshee
У меня карта на Banshee согласилась работать только с последней бета-версией 3.1-beta2. Процесс компилляции и установки библиотеки достаточно подробно описан в прилагаемой документации. В принципе какая-нибудь версия Mesa уже может быть проинсталлирована в вашей системе, но я советую воспользоваться именно последней. Сказанное о Frame Buffer и svgalib для TNT относится и к Banshee с одним добавлением: глючит Banshee больше. Так, у меня карта не восстанавливала fb-консоль после выхода (или переключения) из Х-сервера.
Рекомендации по установке игр
Чтобы запустить Quake2, для меня идеальным оказался следующий вариант:
export MESA_GLX_FX=fullscreen
./quake2 +set vid_ref glx +set _windowed_mouse 1
Без первой строки Quake2 запустится в окне, параметры второй строки необходимы для того, чтобы Q2 запустился в OpenGL и нормально использовал мышь. Также можно посоветовать попробовать посмотреть файл конфига quake2 на предмет
'gl_driver'. Для ТНТ эта переменная должна быть libGL.so. для Banshee - libMesaGL.so.
чтобы запустить Quake3 на Banshee, помогло только следующее:
./linuxquake3 +set r_glDriver libMesaVoodooGL.so.3.1 +set r_mode 6 +set
in_dgamouse 0
Без этих параметров Banshee не будет нормально выводить изображение в Quake3.
С запуском Quake3 на TNT все проще:
./linuxquake3 +set r_glDriver libGL.so
Если не работает
Результаты тестирования
Linux | Windows 98 | |||
TNT | Banshee | TNT | Banshee | |
Quake1, software, timedemo demo1 | 20,4 | 23,4 | ||
Quake2, demo1.dm2 | 21,7 | 37,4 | 67,3 | 65,8 |
Quake2, crusher.dm2 | 12,2 | 21,1 | 32,1 | 27,3 |
Quake2, massive1.dm2 | 16,9 | 30,9 | 54,2 | 52,7 |
Quake3Arena Test, q3testdemo1.dm3 | 23,8 | 47,4 | 54,2 | 53,5 |
Для тестов было выбрано достаточно низкое разрешение 640х480, поскольку поддержка 3D в Linux еще не достигла уровня Windows 98. Обескураживающе низкие результаты Riva TNT связаны на мой взгляд с двумя вещами. Во-первых, поддержка OpenGL
для TNT появилась чуть более месяца назад, в отличие от проекта Mesa3D, который успешно развивается с 1995 г. Во-вторых, Mesa/GLX модуль под Линуксом на данный момент (v1.0) не поддерживает никаких OpenGL-extensions. И соответствующий пункт в
настройках Q3test не оказывает никакого влияния на работу TNT карты. Если же его отключить, то показатели Banshee упадут от 47,4 до 42,9 fps (на вышеуказанных настройках). Впрочем, это все равно не может служить оправданием для программистов
NVidia.
Также необходимо дать некоторое пояснение по поводу теста Quake1. Демка прокручивалась естесственно в software-режиме, в окне 640х480, и следовательно может являться в первом приближении бенчмарком скорости в 2D-графике (скорости Х-сервера).
Тут NVidia тоже проигрывает, хотя и не так катастрофически, как в OpenGL.
Впрочем, у Banshee все тоже не безоблачно. Так, в Q3test напрочь отказался корректно работать режим 800х600. Что касается качества изображения, то здесь картина аналогична наблюдаемой в Windows: "сеточка" у Banshee и весьма высокое (по моему
впечатлению) качество TNT. Некоторые глюки с большими текстурами у TNT исчезают при установке бегунка texture detail в третье положение. Для характеристики работы Banshee может оказаться интересно, что при включении marks on wall, неба и
geometric detail : high скорость падала до 32,5 fps.
Замечание по данным для Windows 98: использовались reference-драйвера от NVidia (2.08) и 3dfx (4.11.01.1444) соответственно. Последний драйвер от Asus для v3400 TNT (2.08 beta 3) в принципе чуть быстрее, но для Banshee попросту давно не было
обновления, поэтому я остановился на reference-драйверах.
Выводы
До недавнего времени сравнивать 3dfx под Linux было вообще не с чем. И то, что сделала NVidia, является очень большим шагом вперед. А если учесть, что дальнейшее развитие поддержки TNT продолжит если не сама NVidia, то независимые программисты (NVidia сделала доступными исходные тексты этих драйверовна своем ftp, а также массу документации по своим чипам, то можно надеяться, что Banshee скоро придется потесниться. Но сейчас Banshee обгоняет TNT в OpenGL играх под Linux на 80-100%.
Благодарности
Reactor Critical благодарит компанию Доминион (Н.Новгород, 8312 33-15-20) за предоставленные для тестирования платы.
1 августа 1999
Статья взята с сайта Reactor Critical (http://www.reactor.ru)
Вернуться в раздел "Видеосистема" - Обсудить эту статью на Форуме |
Главная - Поиск по сайту - О проекте - Форум - Обратная связь |