Сравнение последних версий Detonator: 29.42 против 30.82

24.08.2002


Game1 – Car Chase

Оптимизация анизотропии Level 2:

Тест использует больше текстур и больше текстурных слоев, чем предыдущий. Используются ли для освещения карты освещения (текстуры), либо вершинное освещение (блок T&L) авторы умалчивают.

Скорость:

Detonator 29.42 против 30.82  Detonator 29.42 против 30.82

Качество:

Detonator 29.42 против 30.82

Фрагмент

 

Stage 1,2,3 - Level 1

Stage 1,2,3 - Level 2

Level 2
(Stage 0)

Detonator 29.42 против 30.82 Detonator 29.42 против 30.82

Эффективность:

Detonator 29.42 против 30.82

В отличие от теста Dragothic, в CarChase оптимизация анизотропии приносит наибольшее (хотя и небольшое J) преимущество уже GeForce3.

Однако, оптимизация эта (использование билинейной фильтрации, вместо анизотропии, на Stage 1, 2, 3) принесла с собою и заметную деградацию качества, чего не наблюдалось в Dragothic.

Посмотрим, как обстоят дела при более глубоких уровнях анизотропии:



Оптимизация анизотропии Level 4:

Скорость:

Detonator 29.42 против 30.82  Detonator 29.42 против 30.82

Качество:

 

Stage 1,2,3 - Level 1

Stage 1,2,3 - Level 2

Stage 1,2,3 - Level 4

Level 4
(Stage 0)

Detonator 29.42 против 30.82 Detonator 29.42 против 30.82 Detonator 29.42 против 30.82

Эффективность:

Detonator 29.42 против 30.82


Оптимизация анизотропии Level 8:

Скорость:

Detonator 29.42 против 30.82  Detonator 29.42 против 30.82

Качество:

Level 8
(Stage 0)

Stage 1,2,3 - Level 1

Stage 1,2,3 - Level 2

Stage 1,2,3 - Level 4

Detonator 29.42 против 30.82 Detonator 29.42 против 30.82 Detonator 29.42 против 30.82

Stage 1,2,3 - Level 8

Detonator 29.42 против 30.82

Эффективность:

Detonator 29.42 против 30.82

GeForce 3 по-прежнему получает больший, нежели GeForce 4, прирост в этом тесте, от ограничения уровня анизотропии на стадиях 1,2,3. Однако, посмотрите на качество. Оно далеко не такое "одинаковое", как мы видели в тесте Game2 - Dragothic. Дорога в Game1, вероятно, строится по двум-трем текстурам. Последняя текстура (скорее всего Detail) вероятно фильтруется не на нулевой стадии, а на первой, что, конечном счете, дает нам, в данном примере, качество ее фильтрации скорее близкое установленному для Stage 1,2,3 чем для Stage 1.

Попробуем задать желаемый уровень анизотропии не на нулевой стадии, а на первой, ограничив его для стадий 0,2,3, оптимизировав, таким образом, анизотропию Level 8:

Оптимизация анизотропии Level 8:

Скорость:

Detonator 29.42 против 30.82  Detonator 29.42 против 30.82

Качество:

Level 8
(Stage 1)

Stage 0,2,3 - Level 1

Stage 0,2,3 - Level 2

Stage 0,2,3 - Level 4

Detonator 29.42 против 30.82 Detonator 29.42 против 30.82 Detonator 29.42 против 30.82

Stage 0,2,3 - Level 8

Detonator 29.42 против 30.82

Эффективность:

Detonator 29.42 против 30.82

При ограничении максимального уровня анизотропии для стадий 0, 2, 3 качество деградирует наименьшим образом, но и скорость растет слабее, чем при ограничении анизотропии для стадий 1, 2, 3. Наиболее сбалансированной оптимизацией, по соотношению скорость-качество, в тесте CarChase, оказался метод «2822» для карты GeForce4 (прирост 10.3%) и метод «8444», для карты GeForce3 (прирост 8.5%).

Итак, как вы уже, наверное, поняли, оптимизация анизотропии в Direct3D-приложениях - совсем не та оптимизация, что мы имеем в OpenGL-приложениях. В последнем случае, оптимизация – это тонкий алгоритм, интеллектуально пропускающий анизотропию только для тех текстур, заметить деградацию качества которых затруднительно, а часто и вообще невозможно.

Алгоритм оптимизации анизотропии в D3D более грубый и интеллектуальность его - полностью в ваших руках.

В играх, строящих ландшафт по двум текстурам и выше (не считая карты освещения), с оптимизацией нужно быть очень осторожным. Иначе, может сложиться ситуация, в которой полностью отключив (понизив) уровень анизотропии для всех текстур, фильтруемых на определенных стадиях, когда качество картинки будет в большей степени определяться этими «определенными стадиями», нежели стадией, для которой включена анизотропия максимального уровня. Пример этого - 3DMark Game1, при ограничении анизотропии на стадиях 1, 2, 3.

В качестве рекомендаций по механизму оптимизации анизотропии в различных Direct3D-играх, можно привести следующие:

Наибольшие преимущества в скорости может принести установка билинейной фильтрации для стадий, следующих за стадией нулевой. Этот метод наилучшим образом подходит для игр, использующих "обычное" битекстурирование и накладывающие при этом базовую текстуру + карту освещения. Такую схему используют большинство игр, однако иногда нельзя уверено сказать, что используется именно эта схема (особенно это касается самых новейших игр). Поэтому, если вы вдруг замечаете, что после оптимизации анизотропии по указанной выше схеме, качество картинки не подобающе низко (имеется в виду не подобающе анизотропии, установленной для stage0), действуйте более гибко. Необходимо выявить опытным путём текстурную стадию (стадии), вносящую(ие) наибольший вклад в чёткость изображения. Установив для такой стадии (стадий) анизотропию желаемого уровня и ограничив анизотропию на остальных стадиях, вы сможете получить картинку, очень близкого к анизотропии желаемого уровня качества, выиграв при этом в скорости.



Выводы

Драйвер 30.82 показал себя достаточно неплохо, в сравнение с предшественником. Хотя, в наборе базовых тестов никакой значительной разницы выявлено не было, 30.82 порадовал, прежде всего, возможностями, которых можно добиться от него с помощью RivaTuner. В Direct3D нам представлено целое поле для экспериментов с оптимизацией анизотропии, с целью повысить скорость анизотропной фильтрации.

Стоит упомянуть и приятную мелочь – исправленный «баг со сплэш-скрином».

Но есть повод и для огорчения. В драйвере 30.82, NVIDIA ввела защиту против программной переделки карт GeForce в Quadro с помощью драйвера RivaTuner – NVStrap. Для кого-то, эта неприятность может стать решающим аргументом в вопросе выбора драйвера.



Андрей Дерябин a.k.a. andser (andser@nvworld.ru)

Алексей Николайчук a.k.a. Unwinder (AlexUnwinder@mail.ru)


Обсудить/дополнить в конференции

Переход на страницу:

 1 

 2 

 3