Свежий номер №5 (430) / Radeonреемник
 
Дата публикации: 12.02.2002

Всеволод Киселев, vsevolod@game-exe.ru

Хотя корпорация nVidia - безусловный лидер рынка графических чипов, о монополизме, к счастью для потребителя, говорить еще рано. Однако, по сути, единственной компанией, действительно способной составить конкуренцию лидеру, остается канадская ATI Technologies, недавно пополнившая линейку своих чипов Radeon двумя новыми продуктами - 8500 (R200) и 7500. Правда, и nVidia не стояла на месте: на смену хедлайнеру GeForce3 (NV20) пришел чип GeForce3 Titanium 500 с более высокими тактовыми частотами ядра и памяти, так что бороться за звание абсолютного чемпиона мира в потребительской 3D-графике канадцу придется уже с ним.

Мы не будем приводить полную спецификацию чипа ATI, а остановимся на его ключевых особенностях. Radeon 8500, изготовленный по 0,15-мкм норме, состоит из 60 млн. транзисторов. Он общается с различными типами памяти (SDRAM/SGRAM, DDR SDRAM/SGRAM) по 128-разрядной шине и может адресовать до 256 Мбайт видеопамяти. Поддерживается асинхронный режим работы, максимальная частота и ядра, и памяти - 275 МГц. DDR-память на такой частоте имеет пропускную способность 8,8 Гбайт/с.

Чип поддерживает протокол передачи данных AGP 4х (плюс SBA и DiME), имеет аппаратный блок T&L, способный выдавать на-гора более 60 млн. треугольников в секунду, а также четыре пиксельных конвейера, на каждый из которых приходится по два текстурных модуля. Таким образом, максимальная скорость заполнения в режиме монотекстурирования составляет 1100 млн. пикселей в секунду, в режиме мультитекстурирования - 2200 млн. текселей в секунду, что примерно на 15% больше, чем у GeForce3 Titanium 500. Кроме того, у Radeon 8500 результаты работы текстурных блоков могут суммироваться, что позволяет накладывать до шести текстур за один проход (при двух штрафных тактах).

Чип полностью поддерживает спецификацию OpenGL 1.3 и все функции DirectX 8.1, включая пиксельные шейдеры вплоть до версии 1.4 и вершинные шейдеры 1.1 1. В спецификации ускорителей серии GeForce3 Titanium 500 тоже заявлено, что они полностью совместимы с DirectX 8.1, но комизм ситуации в том, что калифорнийцы и северяне понимают под этим разные вещи. nVidia заявляет, что ядро NV20 может исполнять пиксельные шейдеры спецификаций 1.1, 1.2 и 1.3 (два последних - пока лишь на бумаге). Дело в том, что корпорация nVidia убедила Microsoft считать поддержку этих функций достаточной для заявления о полной совместимости с последним релизом DirectX, тогда как Radeon 8500 отрабатывает это звание полностью.

Максимальная степень анизотропной фильтрации у Radeon 8500 составляет 16х (у NV20 - 8х), но в отличие от GeForce3 он не может одновременно осуществлять анизотропную и трилинейную фильтрацию в OpenGL-приложениях. Чип способен накладывать рельефные текстуры методами Emboss, EMBM, Dot3, максимальный размер текстур - 2048х2048.


1a

1б

Поток водопада состоит из 4000 точечных спрайтовых примитивов (плюс дополнительные 4000 для создания отражения водопада в реке). Точечные спрайты - это функция, впервые появившаяся в составе DirectX 8.0 и аппаратно поддерживаемая чипом Radeon 8500. Они предназначены для создания таких эффектов, как туман, огонь, вспышки, пыль.

Волны на поверхности реки прорисовываются с помощью комбинации вершинных (создание эффекта волн) и пиксельных (расчет динамических эффектов отражения и преломления) шейдеров. Карты отражения и преломления обновляются с каждым кадром, таким образом достоверность изображения не зависит от положения наблюдателя и от движущихся объектов в кадре (например, рыбок, выпрыгивающих из воды). На левом берегу реки (скриншот справа) рядом с водой можно увидеть мокрые камни, отражающие свет. Этого эффекта позволяет добиться применение пиксельных шейдеров и рельефного текстурирования.


Несмотря на значительные архитектурные отличия Radeon 8500 является результатом развития идей, заложенных в его предшественниках, поэтому большинство модулей чипа имеют в названии римскую цифру II: Charisma Engine II - блоки трансформации, отсечения и освещения и вершинных шейдеров; Pixel Tapestry II - архитектурный фундамент чипа - совокупность всех конвейеров и текстурных блоков; HyperZ II - усовершенствованная версия технологии, которая применяется для избавления адаптера от рендеринга невидимых участков сцены и разгрузки шины памяти. Оптимизация работы Z-буфера позволяет достичь эффективной полосы пропускания памяти до 11 Гбайт/с; Video Immersion II - блок обработки видеоизображения, включая модуль деинтерлейсинга кадра и функцию независимой гамма-коррекции для видеопотоков.

Как правило, телевизионные видеоматериалы записаны в формате с интерлейсингом, то есть дисплей отображает кадр в два прохода: сначала показываются только четные строки, потом - нечетные. Современные мониторы лишены необходимости показывать видео таким образом, поэтому требуется деинтерлейсинг изображения. Стандартно применяются два метода: BOB и Weave. Последний применяется для остановленных кадров: адаптер честным образом составляет изображение из четных и нечетных строк, в результате получается картинка с удвоенным вертикальным разрешением. Метод BOB целесообразно применять для материалов с активно движущимися объектами, он заключается в том, что адаптер вместо одного кадра показывает два: один из четных строк, второй - из нечетных. ATI разработала собственный метод попиксельного деинтерлейсинга, который обеспечивает максимальное вертикальное разрешение и высокую четкость изображения.

Radeon 8500 аппаратно поддерживает две новые разработки в области 3D-графики - TruForm и SmoothVision. Вторая не представляет собой ничего революционного - это еще один режим полноэкранного сглаживания (Full Scene Anti-Aliasing - FSAA), имеющий общие корни с почившей технологией T-Buffer от легендарной 3Dfx. SmoothVision базируется на попиксельном изменении геометрии сцены и последующем вычислении цвета пикселя на основании цветовых параметров сэмплов из смещенных сцен. ATI заявляет, что для прорисовки пикселя может использоваться до восьми сэмплов, но на данный момент их максимальное число - шесть (очевидно, из-за проблем со скоростью прорисовки столь сложных сцен).

Таблица 1. Основные характеристики видеочипов.


Название чипсета

Radeon 256

Radeon 7500

Radeon 8500

GeForce3 Ti500

GeForce3

Кодовое обозначение

R100

RV200

R200

NV20*

NV20

Частота работы ядра, МГц

183

275

275

240

200

Частота работы памяти, МГц

183/366

230/460

275/550

250/500

240/480

Технологическая норма, мкм

0,18

0,15

0,15

0,15

0,15

Разрядность шины памяти, бит

128

128

128

128

128

Количество пиксельных конвейеров

2

2

4

4

4

Количество текстурных блоков на конвейер

3

3

2

2

2

RAMDAC, МГц

350

2х350

400

350

350

* Чип тот же, что и GeForce3, но ревизия другая.

А вот TruForm пока не имеет аналогов среди конкурирующих решений. Она заключается в том, что адаптер разбивает треугольники, из которых состоит сцена, на более мелкие, используя информацию о нормалях их вершин. Причем, как правило, эти данные не нужно передавать чипу дополнительно, поскольку они используются для расчета освещенности объектов. Таким образом, модели становятся менее угловатыми, а их освещение - более натуралистичным. Разработчики учли даже то, что некоторые объекты в сцене не следует подвергать сглаживанию: например, системный блок, стоящий на столе, не должен превращаться в эллипсоид, лежащий на другом эллипсоиде, - поэтому, если плоскости соприкасаются под углом 90 градусов, тесселяции треугольников проводиться не будет. Теоретически выполнение этой технологии можно было бы включить в уже существующих трехмерных приложениях, но, видимо, результат настолько далек от идеала, что в драйверах такая возможность не предусмотрена. Сегодня посмотреть на сглаженные модели можно, пожалуй, только в игре «Half-Life: Counter Strike» с помощью специального патча. Завершая разговор о TruForm, добавим еще одну ложку дегтя: разбиение полигонов происходит до выполнения вершинных шейдеров, следовательно, нагрузка на адаптер значительно возрастает, а производительность падает…

Еще одна разработка ATI, заслуживающая внимания, - это технология SmartShader. Она является не чем иным, как расширением вершинных и пиксельных шейдеров, поддержка которых впервые появилась в драйверах DirectX 8.0. В результате сотрудничества компаний ATI и Microsoft свет увидела новая версия DitrectX, позволяющая раскрыть все достоинства SmartShader. Для разработчиков OpenGL-приложений новые функции доступны через специальные расширения. Основные преимущества SmartShader перед прежними вершинными и пиксельными шейдерами заключаются в следующем:

  1. наложение до шести текстур за один проход позволяет создавать более сложные эффекты без высоких требований к полосе пропускания памяти (и не уменьшает производительность из-за отсутствия многопроходного рендеринга);

  2. упрощенный набор инструкций, позволяющий разработчикам получать сложные эффекты при меньшем количестве операций;

  3. длина пиксельных шейдеров может составлять 22 инструкции (против 12 инструкций по версии DirectX 8.0), благодаря чему более корректно отображаются материалы различных типов (металл, керамика и пр.);

  4. возможность производить математические операции по адресации текстур и с их цветовыми параметрами, что позволяет получить ранее недоступные эффекты освещения и текстурирования объектов.

    Предвижу вопрос читателя: все это очень хорошо, но когда мы сможем увидеть программное обеспечение, которое поддерживает эти разработки? К сожалению, у ATI есть негативный опыт решений, которые пропали втуне. Чип Radeon 256 имел по три текстурных блока на один пиксельный конвейер, компания подняла большую шумиху о том, как это здорово… И что? Из-за отсутствия поддержки этой функции разработчиками третий текстурный блок оказался не нужным, и от тройного текстурирования просто отказались, увы. Тем не менее, предлагаем вам ознакомиться со скриншотами моделей, рассчитанных c помощью уникальных функций Radeon 8500.

    С легкой руки компании Matrox в индустрии стало модно оснащать графические контроллеры средствами вывода картинки на два отображающих устройства. Среди карт на базе Radeon 256 только одна из младших моделей (Radeon VE) поддерживала эту функцию, но теперь ATI снабдила этим мультимедийным расширением свой самый быстрый чип. В Radeon 8500 интегрированы два ЭЛТ-контроллера и один TMDS-трансмиттер с частотой 165 МГц для подачи изображения на цифровые мониторы. Однако встроенных конвертеров RAMDAC у чипа не два, а один, второй должен быть внешним. Платы на базе Radeon 8500, оснащенные микросхемой ATI Rage Theater, могут транслировать изображение на телеприемник (причем наличие монитора не обязательно). Чип оптимизирован для работы в среде Windows XP и поддерживает все расширения графического стандарта GDI (Alpha BLT, Transparent BLT, Gradient Fill).

    Таблица 2. Результаты некоторых тестов на основе игровых приложений.


    GeForce3

    GeForce3 Titanium 500

    ATI Radeon 8500

    3DMark 2001

    6411

    6898

    7222

    Quake III, 800x600x32

    172,9

    174,8

    170,8

    Quake III, 1024x768x32

    150,9

    161,8

    161,0

    Quake III, 1280x1024x32

    111,6

    126,3

    131,2

    Quake III, 1600x1200x32

    81,2

    94,0

    95,4

    UT, 800x600x32

    100,9

    101,9

    105,5

    UT, 1024x768x32

    91,6

    91,5

    103,9

    UT, 1280x102432

    81,4

    81,7

    98,7

    UT, 1600x1200x32

    X

    X

    93,8

    Expendable, 800x600x32

    127,4

    128,1

    118,3

    Expendable, 1024x768x32

    126,6

    127,2

    116,6

    Expendable, 1280x102432

    122,1

    123,2

    112,9

    Expendable, 1600x1200x32

    104,6

    114,2

    106,6


    Изучив маркетинговый опыт nVidia, компания ATI решила прибегнуть к тем же приемам и стала искать партнеров для выпуска адаптеров на базе ее чипов (раньше канадцы делали это только сами). Полный список партнеров ATI можно увидеть по адресу. В нем преимущественно малоизвестные в России китайские и тайваньские фирмы, но не стоит забывать, что за незнакомым названием может скрываться один из китов индустрии, который просто не хочет портить отношения с калифорнийскими парнями (в общем-то, белые коробки без маркировки и noname-продукты не редкость в мире ИТ).

    Сэмпл, предоставленный нам европейским офисом ATI, маркирован и упакован как оригинальный продукт компании, хотя и произведен в Китае. Впрочем, карта изготовлена очень качественно. Восемь микросхем DDR-памяти (производство Hynix) с временем выборки 3,6 нс имеют суммарный объем 64 Мбайт. Несмотря на высокую скорость работы, память не имеет охлаждения, тогда как более медленное ОЗУ у GeForce3 Titanium 500, как средневековый рыцарь, сплошь закрыто массивным радиатором. На боковой планке адаптера размещено три разъема: стандартный VGA- (DB15), DVI-I- и TV-выход; наличие последнего говорит о том, что на плате установлен мультимедийный чип ATI Rage Theater. Кроме того, там же мы обнаружили второй (внешний) RAMDAC - 10-битную микросхему ADV7123, работающую на частоте 240 МГц, - то есть максимальное доступное изображение для второго отображающего устройства - 1600х1200 при частоте развертки 100 Гц. Radeon 8500 поддерживает все возможные варианты отображения сигнала на двух устройствах (технология HydraVision).


    2а

    2б

    Демо с девушкой Рейчел показывает, какого уровня реализма можно достичь, используя технологию SmartShader. Вершинные шейдеры используются для анимации персонажа, а пиксельные - для прорисовки в реальном времени кожи лица с фотографическим качеством. Для отображения прически и ресниц Рейчел применяется поточечное анизотропное освещение, позволяющее отобразить структуры, которые возникают на поверхностях с большим количеством продольных желобков (таких как волосы или ткань). Губы Рейчел, ее волосы и даже зубы прорисовываются с применением рельефного текстурирования. В рендеринг глазных яблок входит наложение карт среды. Даже сережки и атласная ленточка Рейчел обсчитываются отдельным шейдером.


    Установка ATI Radeon 8500 прошла без сучка, без задоринки. Кроме драйверов пользователю предлагается множество фирменных утилит, обилием которых славится канадская фирма. При тестировании (подробно о конфигурации стенда и испытаниях читайте на www.ferra.ru/online/video/15420 в полной версии обзора; там же опубликованы скриншоты сцен, выводимых видеоускорителем) адаптер показал отличные, порой даже превосходные результаты. Замер производительности при прогоне демо из «Quake III» показал, что Radeon 8500 уступил платам на базе NV20 только при низких разрешениях, а на более высоких в действие вступила технология HyperZ II, и лидер сменился. Тут стоит отметить, что при использовании более старых драйверов для карты ATI ее показатели были бы еще лучше. Но! В предыдущих версиях (до 4.13.7206) в игре от id Software принудительно уменьшалось качество текстур, что повышало скорость прорисовки сцен. Сама компания утверждает, что это было сделано исключительно ради блага игроков (довольно спорный аргумент), а не для того, чтобы искусственно завысить производительность и тем самым обойти конкурентов.

    При замере производительности в Direct3D-приложениях карта от ATI взяла верх в 3DMark 2001 и «Unreal Tournament», но не смогла удержать лидерство в тесте «Expendable Demo» (см. таблицы результатов).

    Мощности современных графических адаптеров хватает не только на то, чтобы рендерить картинку в «стандартном» качестве, они могут предложить пользователю такие средства повышения качества изображения, как анизотропная фильтрация и полноэкранное сглаживание. Обработка текстур подобным образом, безусловно, улучшает изображение, но может весьма негативно сказаться на скорости вывода графики, подтверждением чему служат показатели карт на основе NV20 (см. табл. 3). Но механизм работы с текстурами в ускорителях компании ATI значительно отличается от способа, исповедуемого nVidia, и поэтому в данном случае улучшение реалистичности сцены происходит почти без ущерба для производительности.

    Таблица 3. Производительность видеоускорителей в режиме анизотропной фильтрации
     (без трилинейной).


    GeForce3,
    Level 4

    GeForce3
    Titanium 500,
    Level 4

    ATI Radeon
    8500,
    High Quality

    GeForce3,
    Level 8

    GeForce3
    Titanium 500,
    Level 8

    ATI Radeon 8500,
    Highest Quality

    Quake III, 800x600x32

    153,6

    164,8

    170,8

    138,4

    152,7

    170,9

    Quake III, 1024x768x32

    114,8

    130,7

    159,8

    97,8

    113,3

    157,6

    Quake III, 1280x1024x32

    74,2

    87,3

    125,5

    62,5

    73,8

    122,6

    Quake III, 1600x1200x32

    52,6

    62,1

    90,4

    44,1

    52,2

    88,2


    Как и в случае процессинга текстур, компании ATI и nVidia придерживаются разных методик реализации полноэкранного сглаживания. Но и тот и другой путь приводит к приятной глазу картинке, без раздражающего «эффекта лесенки» (правда, за счет дополнительной нагрузки на ускоритель). Как видно из таблицы 4, лучше с задачей справляются платы семейства GeForce3. Технология SmoothVision дает отличное качество изображения, но требует за это, как нам кажется, слишком большого снижения скорости. Более привлекательной, по нашему мнению, является фирменная методика сглаживания от nVidia - Quincunx: продуманный компромисс между реалистичностью и производительностью.

    Таблица 4. Производительность видеоускорителей в режиме полноэкранного сглаживания.


    GeForce3
    Titanium
    500,
    2x

    ATI
    Radeon 8500,
    Smoothvision 2x

    GeForce3,
    Quincunx

    GeForce3
    Titanium
    500,
    Quincunx

    GeForce3
    Titanium 500,
    4x

    ATI
    Radeon 8500,
    Smoothvision
    4x

    Quake III, 800x600x32

    150,1

    123,1

    116,3

    132,3

    119,4

    70,5

    Quake III, 1024x768x32

    103,7

    64,0

    75,5

    86,7

    71,8

    31,8

    Quake III, 1280x1024x32

    65,3

    38,1

    47,0

    54,3

    41,5

    X

    Quake III, 1600x1200x32

    44,8

    X

    32,3

    37,4

    X

    X


    В целом новинка от ATI оставляет благоприятное впечатление, и если б не проигрыш на поле FSAA, ее можно было бы назвать пределом мечтаний. Впрочем, учитывая цену Radeon 8500 (порядка 190 долларов), это не слишком далеко от истины. Поклонники канадской компании и просто любители качественной 3D-графики имеют отличный повод для радости: наконец-то у самых мощных карт nVidia появился достойный конкурент, который способен не только дышать лидеру в спину, но и показывать ему свою.


    1 (обратно к тексту) - Шейдер (shader) - это процедура, указывающая 3D-ускорителю, как обрабатывать каждый пиксель (пиксельный шейдер) или каждую вершину (вершинный шейдер) треугольников. Разработчик приложения составляет такие процедуры из простеньких арифметических команд, напоминающих ассемблерные инструкции. DirectX (версии 8.0 и выше), получив код шейдера от приложения, транслирует его и отдает на выполнение 3D-ускорителю.


    Всеволод Киселев
    vsevolod@game-exe.ru
     


    << Конfeтти
    Все материалы номера
    Еда и кластеры на скорую руку >>