Тестирование видеоакселераторов в пакете 3D Studio MAX R2.5


В любом современном компьютере есть 3D графический акселератор. Большинство людей используют его возможности лишь для развлечений. Но есть группа товарищей (совсем не удаленных от основной массы народа), которые хотят кроме развлечений еще и работать. Говоря по-русски, эти господа хотят использовать 3D графические ускорители, рассчитанные на массовый рынок, для профессионального и полупрофессионального применения. Разумеется, сразу возникает вопрос, а можно ли использовать, в общем-то, игровые платы в серьезных графических пакетах? В последнее время мощность графических акселераторов, рассчитанных на массовый рынок, сильно выросла, что сделало возможным их использование в профессиональных программах трехмерного моделирования. В России наибольшее распространение получила программа 3D Studio MAX от Kinetix — она достаточно мощна для выполнения серьезных работ, ее интерфейс весьма удобен. К тому же многочисленным пользователям первых версий не пришлось переучиваться с появлением r2.0 и r2.5, т.е. модернизация проходила без потерь. Сам я являюсь давним пользователем 3D Studio Max, поэтому передо мной также не раз вставала проблема выбора карты для работы. В этой статье я покажу, какую же производительность могут обеспечить современные игровые платы в популярном графическом пакете, по сравнению с возможностями профессиональных, но не дорогих, графических акселераторов. Замечу, что использовал я R2.5, т.к. R3 пока еще мало доступен, а R2.5 проверен на дорогах.

Не углубляясь в объяснения принципов работы программы 3DMAX можно сказать, что основное рабочее время можно разделить на две части:

Часть первая — работа в окнах проекции

Работая в 3DMAX, дизайнер основную часть времени проводит за созданием, размещением и настройкой объектов в так называемых окнах проекции -

Именно на этом этапе от системы требуется максимальная производительность. В противном случае вы рискуете выпить слишком много кофе, пока маломощная машина (со слабым CPU или видео акселератором) со скоростью 0.5-1 fps, примерно как у верткой черепахи, будет осуществлять все требуемые операции. Посудите сами — если после перемещения/поворота какого либо объекта придется ждать обновления экрана десятки секунд, то ни о какой продуктивной работе не может быть и речи. Хороший OpenGL акселератор существенно ускоряет процесс перерисовки трехмерных объектов в окнах, однако, необходимо понимать, что любой ускоритель можно "поставить на колени" полностью текстурированной сценой с сотнями тысяч треугольников. Естественно, видеокарта должна, во-первых, поддерживать ускорение в окне (именно поэтому нельзя было использовать мощь Voodoo2 в этой программе) и, во-вторых, иметь полноценный OpenGL драйвер. Хотя 3DMAX с версии 2.0 может работать через D3D, но OGL драйвер, как правило, быстрее и дает множество приятных дополнительных возможностей, например, включенную "по-умолчанию" коррекцию текстур.

Cтепень детализации сцены в окнах можно настраивать соответственно своим потребностям и возможностям акселератора от освещенного и текстурированного Smooth + Highlight до простого Bounding box режима, что помогает достичь оптимальной производительность. Без скорости в 60 fps здесь можно обойтись, но при 5 fps нормально работать не получится.


Часть вторая — окончательная визуализация

Только после необходимой настройки и доводки всей сцены производится окончательная визуализация, причем исключительно силами центрального процессора системы. Причем качество софтверного "чистового" визуализатора намного лучше получаемого в окнах проекции с помощью графического ускорителя. Объясняется это очень просто — ни один современный ускоритель не поддерживает столько эффектов, сколько требуется, поэтому приходится мирится с медленным, но красивым софтверным рендерингом.


Конечно, скорость в "fps" окончательной визуализации очень мала (некоторые кадры сложных сцен могут обсчитываться часами), но в этом случае скорость не столь важна, как в случае работы в окнах проекции — при окончательной визуализации анимации намного важнее качество. Тем более на этом этапе вмешательство человека не требуется и компьютер можно оставить считать окончательно смоделированный проект, например, на ночь.

Разобравшись с принципами работы в 3DMAX, перейдем непосредственно к тестированию.

Сравниваются следующие акселераторы:

  • 3Dlabs Oxygen VX1, 32 Мб, драйвер 2.14-0919
  • Creative TNT2 Ultra, 32 Мб, драйвер 2.08
  • Creative TNT, 16 Мб, драйвер 2.08
  • Matrox Millennium G400, 32 Мб, драйвер 4.12
  • Diamond Fire GL 1000 Pro (Permedia 2), 8 Мб, драйвер 2.11-0555
  • ATI FURY 32Mb (Rage 128), драйвер 6.12

Для самого примерного сравнения я приведу результаты программого обсчета окон проекции на процессоре Pentium II 450 MHz. Несмотря на приличные результаты, полученные с его помощью, следует помнить, что при программном рендеринге не включены некоторые настройки, и из-за этого качество получаемого изображения в целом получается ниже.

Конфигурация тестового стенда:

  • Pentium II 450Mhz
  • ASUS P3B-F
  • 256Mb PC100
  • Quantum CR 6400Mb
  • Windows NT 4.0 + SP 5
  • 3DMAX 2.5

Все тесты проходили в разрешении 1024х768х32bit

Так как по условиям теста испытания проходили в режиме 32bit и в OpenGL, то карты на чипах серии Voodoo 3 от 3dfx не принимала участия в испытаниях.

На сегодня нет общепринятой методики тестирования качества рендеринга окон проекции в 3D Studio MAX, что, в принципе, не особо существенно, так как все мало-мальски приличные игровые и не дорогие профессиональные акселераторы хорошо справляются с отображением не слишком "навороченных" сцен. Качество отображения объектов в окнах проекции для всех рассматриваемых в этой статье акселераторов было примерно одинаково. Гораздо более интересно рассмотреть скоростные показатели видеокарт — ведь именно от скорости и будет зависеть продуктивность работы. Для тестирования скорости производителем пакета 3D Studio MAX было разработано несколько тестов, в основном дающих представление о скорости работы видеокарты в Smooth+Highlight режиме. К этим тестам я прибавил еще несколько своих собственных, показывающих скорость в "проволочном" (Wireframe) режиме, так как довольно много времени уходит на моделирование именно в этом режиме.

Четыре теста, показывающие производительность видеокарты с затененными нетекстурированными полигонами:


Тест 1

Три объекта, содержащих в сумме 20000 треугольников освещены двумя источниками света. Все три объекта перемещаются на сцене и ни один из них не выходит за пределы окна. Этот тест оценивает "сырую" производительность ускорителя в простых сценах

В этом тесте с умеренной нагрузкой на CPU с большим отрывом лидирует TNT2, VX1 серьезно отстает, остальные платы идут плотной группой и показывают такие же результаты, как софтверный рендерер.

Тест 2

Та же сцена, что и в "Тест 1", но количество треугольников в объектах увеличено до 100000. Этот тест показывает, какую скорость заполнения (fillrate) имеют видеокарты в больших сценах.

Со значительным увеличением нагрузки на CPU отрыв не так уж и велик — VX1 подбирается вплотную к TNT2, интересно другое — на больших сценах эффективность относительно слабых видеокарт падает ниже софтверного рендеринга. Конечно, в этом однозначна заслуга мощного CPU, обгоняющего даже плату на Permedia2.

Тест 3

Сцена из "Тест 1", только в этом случае одновременно в окне находится только часть одного из трех объектов, которые "проносятся перед камерой". Этот тест показывает, насколько хорошо драйвер отсекает "невидимую" геометрию.

Почти такие же результаты, как и в "Тест 1".

Тест 4

Объем общей геометрии на сцене составляет около 50000 треугольников, составляющих два объекта, но перемещается только один объект состоящий из 20000 треугольников.

TNT2 снова безоговорочно лидирует, показывая просто сумасшедшую скорость в fps, остальные карты недотягивают даже до софтверного рендерера. Просто удивительно другое — насколько плохо показала себя в этом тесте карта от Matrox.

Следующие три теста показывают скорость работы с текстурами:

Тест 5

Камера перемещается вокруг текстурированного кольца из 20000 треугольников.

Тест 6

Текстурированный цилиндр объемом 5300 треугольников изменяет свою форму.

По итогам двух тестов на скорость работы с текстурированными полигонами ТNT 2 остается на первом месте, последнее место делят G400 и софтверный рендерер.

Тест 7

Камера перемещается внутри полностью текстурированной комнаты объемом 12400 треугольников. Этот тест показывает скорость работы видеокарты в том случае, когда много текстурированной геометрии находится за пределами окна проекции.

Анимация этой сцены нагружает вычислительную систему на все 100%, собственно, этот тест является коплексным и наиболее подходит к реальному моделированию. Именно по этому тесту и стоит оценивать среднюю производительность видеокарт в 3DMAX. Смотрите — TNT2 опять на первом месте, за ней с большим отрывом VX1, софтверный рендеринг на законном, последнем месте. Опять удивляет очень низкая производительность G400 — как всегда, Matrox не позаботилась о написании нормального OpenGL драйвера, оставив это дело "на-потом".

Четыре теста на производительность в режиме Wireframe.

Тест 8

Та же большая сцена из 100000 треугольников, что и в "Тест 2", теперь в Wireframe. Antialiasing включен.

Аntialiasing в софтверном режиме нельзя включить в принципе, поэтому Вы не найдете его результатов в этом тесте. Это первый тест, в котором лидирует VX1, правда, с небольшим отрывом.

Тест 9

То же, что и в предидущем тесте, только Antialiasing выключен.

Как видно, VX1 оптимизирована под Wireframe режиме — скорость значительно больше, нежели у TNT2. Вообще, результаты этих тестов показывают, что продукция компании 3Dlabs — Permedia2 и VX1 оптимизированы именно под большие сцены и каркасный режим. Карта на G400 не прошла оба теста

Тест 10

Небольшая сцена из "Тест 1" в режиме Wireframe. Antialiasing включен.

Но как только сложность сцены падает, вперед опять вырывается ТNT2.

Тест 11

То же самое, Antialiasing выключен.



Creative TNT2 Ultra

Подведем итоги

Как видно, плата на TNT2, помимо превосходных результатов в играх, лидирует среди недорогих плат и в пакете 3D Studio MAX. В 9 из 11 тестов эта плата заняла первые места, пропустив вперед плату Oxygen VX1 от 3Dlabs только в "Тест 8" и "Тест 9".

Ну что же, можно поздравить компанию nVidia с удачным чипом и хорошими драйверами. Можно уверенно констатировать, что акселераторы на чипах серии TNT2 от nVidia являются сегодня лучшим выбором, как для развлечений (игр), так и для работы с пакетом 3D Studio MAX в ценовой категории до $300. Имея карту на базе TNT2 вы можете днем заниматься дизайном, а ночью резаться в Quake3 Arena по локальной сети.

3Dlabs Oxygen VX1

Если вы уважаете компанию 3Dlabs, и доверяете их опыту и верите обещаниям, то обратите внимание на карту Oxygen VX1. Возможно, это именно то, что вам нужно. Можно только работать, никаких развлечений. Только "Тетрис" :)

Если игры вас совсем не привлекают и вы не привыкли разбрасываться деньгами, то рекомендую обратить внимание на плату Diamond FireGL 1000 Pro На базе чипа Permedia2 от 3Dlabs (или аналогичную карту). За сумму около $40 за карту с 8 Мб локальной видеопамяти вы получите рабочую лошадку, справляющиеся с работой в пакете 3D Studio MAX ничуть не хуже более дорогих карт на базе чипов Rage128 от ATi и TNT от nVidia.

Переходящий вымпел разочарования месяца получает карта Matrox Millennium G400 на базе чипа G400. При существующем уровне работоспособности OpenGL драйвера под Windows NT эта карта является сегодня худшим выбором для работы с пакетом 3D Studio MAX.

P.S. Не следует экстраполировать результаты и выводы, полученные для пакета 3D Studio MAX. Не исключено, что в других пакетах 3D моделирования результаты и фавориты могут быть несколько иными. В любом случае, любые комментарии всегда приветствуются.




Дополнительно

Нашли ошибку на сайте? Выделите текст и нажмите Shift+Enter

Код для блога бета

Выделите HTML-код в поле, скопируйте его в буфер и вставьте в свой блог.