В то время, когда обладатели навороченных Geforce II GTS (Ultra) имеют возможность играть в игры в высоких разрешениях (1024x768 и выше) при максимальных настройках,
использовать FSAA в обычных, владельцы карт постарше ограничиваются низкими разрешениями, или вынуждены ухудшать качество картинки. Меня давно занимала проблема поиска
оптимального режима игры, чтобы было красиво и быстро. Очень приятно играть в 1024x768, но 32 бит притормаживает, а HighColor раздражает. В 800x600 все по максимуму, 32 бит,
но надоедает пикселизация. Что делать, денег пока на новую карту нет :-).
Не так давно вышла новая версия утилиты Matrox Techicial Support Tweak Utility, которая позволяет выставлять нестандартные разрешения с шагом 8 по горизонтали и 2 по вертикали.
Главное, чтобы число пикселей по горизонтали и число по вертикали были связаны некоторыми отношениями: 4:3, 5:4, 16:9, или 16:10. Надо также упомянуть предупреждение создателей программы,
чтобы монитор поддерживал выбранное разрешение, иначе, цитирую ***Entering wrong values and/or resolutions that are not supported by your monitor may damage your monitor***
Я ввел следующие разрешения: 888x666, 960x720. Надо сказать, что в Direct3D можно использовать любое разрешение, которое можно выставить на рабочем столе, а в OpenGL лишь те, которые поддерживает игра.
Так как мой монитор не поддерживает 960x720, (точнее, не поддерживал :-), а квейк поддерживает, то поэтому я и ввел это разрешение.
Приведу также субъективные оценки качества графики в этих режимах. 888x666 смотрится лучше, чем 800x600, иногда создается иллюзия игры в 1024x768 (на 15'' мониторе). А 960x720 вообще очень похоже на 1024x768.
Тестовый компьютер:
Intel Celeron 550 (разогнанный 366)
Видеокарта Matrox Millennium G400 16 MB
Монитор Samsung SyncMaster 500b 15''
Материнская плата Abit BH6 (AGP 2x)
Оперативная память 128 МБ PC100
Жесткий диск Quantum Fireball CX 13GB
Звуковая карта Creative Labs 128PCI
Операционная система Windows ME 4.90.3000
DirectX 8.0
Драйверы версия 6.21.003; OpenGL ICD 2.01.006; TurboGL 1.30.002
Для тестирования были выбраны следующие прграммы:
3D Mark 99 MAX (Direct3D)
Unreal v2.25f Timedemo 1. (Direct3D)
Quake III Arena v1.17 demo001.dm3 (OpenGl)
Все тесты проводились в 32 бит цвете, в Quake III палитра тесктур была 16 бит.
Теперь посмотрим на результаты тестов.
Итак, в Direct3D тестах результаты похожие, только в Quake III картина иная, так как 888x666 игрой не поддерживается. В низшем разрешении скорость лимитируюется процессором, этим объясняются малые различия между 800x600 и 888x666.
Посмотрим, есть ли какая-нибудь оптимизация для стандартных разрешений (800x600 и 1024x768). Построим графики, показывающие прямую зависимость скорости от числа выводимых пикселей: 800x600=480000, 888x666=591408, 960x720=691200, 1024x768=786432.
Получается практически линейная зависимость, разве в Quake III в высоких разрешениях скорость чуть ниже, чем могла бы быть при идеальной линейной зависимости. Это объясняется тем, что с повышением разрешения, увеличивается и количество памяти, отводимой под Frame Buffer.
Следовательно уменьшается размер текстурной памяти, и акселератору приходится читать тесктуры через AGP из системной памяти.
Вывод. Из вышеприведенных тестов понятно, что никакой оптимизации ни в играх, ни в драйверах Matrox G400 для стандартных разрешений нет. Можно ввести свои разрешения, которые будут являтся компромиссом между скоростью и качеством. Например, в Unreal при переходе с 800x600
на 888x666 скорость падает всего на 1 FPS. Конечно, на более мощном процессоре падение будет больше, но вряд ли можно найти человека, имеющего Pentium III 800 и Matrox G400 на одной машине, при этом являющегося фанатом FPS и FPS (First Person Shooter и Frames Per Second соответственно :-).
В любом случае, каждый решает сам, в каком режиме играть. Такой широкий выбор - еще одно преимущество владельцев карт Matrox Millennium G400.