Вместо эпилога: год 2004 - Компьютерная графика и ее аппаратная реализация (обзор видеокарт)

NVIDIA GeForce256, GeForce2

В новых драйверах Detonator, серии 5.хх, NVIDIA раньше конкурентов реализовала возможность принудительного включения анти-алиасинга, в любых трехмерных играх, на всех видеокартах семейства GeForce. Это значит, что теперь от игры больше не требовалось, чтобы она сама включала анти-алиасинг: теперь это, при желании пользователя, делал драйвер.

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

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

Более подробно об этом можно почитать в нашей {статье}, посвященной суперсэмплингу.

ATI Radeon256

Вскоре, после выхода GeForce2 GTS, ATI выпустила достойный ответ. Это был ускоритель Radeon256, составивший серьезную конкуренцию GeForce2. Естественно, не была обойдена вниманием ставшая тогда очень модной функция анти-алиасинга. ATI никак не усовершенствовала стандартную реализацию и, точно так же, ввела принудительное включение полноэкранного сглаживания в любых играх, поэтому нет смысла рассматривать ее отдельно (все, выше сказанное о суперсэмплинге, верно и для Radeon256).

Мультисэмплинг

А вот этот инструмент, применяемый для борьбы с алиасингом, является настоящей новинкой на рынке игровых ускорителей. Достаточно спорный вопрос, где он был применен впервые. Первый метод, который условно можно назвать мультисэмплингом, это анти-алиасинг, предложенный фирмой 3dfx и, реализованный ею, также в 2000 году. Хотя официально он назывался Rotated Grid Super Sampling, он имел очень серьезные отличия от использовавшегося конкурентами простого суперсэмплинга. Продукт назывался Voodoo5 и имел один из самых удачных методов сглаживания среди всех, созданных на данный момент. Всякому его дальнейшему развитию и распространению положила конец безвременная кончина разработчика Voodoo5 - фирмы 3dfx.

Другой вид сглаживания, на основе мультисэмплинга, предложила NVIDIA в своем очередном поколении продуктов GeForce3, а затем немного доработала его, к выходу GeForce4.

ATI также не осталась в стороне. В ответ на семейство GF3, она выпустила очень серьезный продукт, помимо всего прочего, поддерживающий фирменный метод анти-алиасинга, альтернативный подходу NVIDIA.

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

NVIDIA GeForce3, GeForce4

В начале 2001 года NVIDIA выпустила на рынок новый ускоритель, приятно удивляющий количеством новых и усовершенствованных функций. Одной из них был новый метод полноэкранного сглаживания, называемый High-Resolution AntiAliasing (или просто HRAA). Вряд ли можно утверждать, что его качество превосходит качество традиционного суперсэмплинга, но скорость была очень и очень серьезно увеличена, что было направлено на решение главной проблемы анти-алиасинга, которая не снята до сих пор: падение скорости от включения этой функции часто так велико, что вместо нее можно увеличить разрешение, поставить максимальные настройки графики и иметь при этом большую скорость. Именно поэтому, некоторые люди, скептически относятся к анти-алиасингу, вообще не видя смысла в его применении в играх. Разберемся в принципах работы нового метода сглаживания.

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

Рассмотрим доступные режимы анти-алиасинга и подробности работы каждого:

Отсутствие анти-алиасинга.

Каждому пикселю соответствует один сэмпл (или субпиксель). Этот режим вряд ли требует комментариев. На рисунке показаны 4 пикселя. Номерами обозначены субпиксели (в дальнейшем, если номера одинаковы, то это один и тот же сэмпл, записанный несколько раз, Анти-алиасинг 2x (1х2).

Каждому пикселю соответствует 2 субпикселя, расположенных по горизонтали. Как видно на рисунке, если в пиксель попадает граница между полигонами, то рассчитываются два честных субпикселя и результирующий пиксель формируется усреднением значений цветов этих двух сэмплов, как и в случае суперсэмплинга. А вот если в пиксель не попадает граница между двумя полигонами, то рассчитывается только один сэмпл и используется два раза, что, в общем-то, эквивалентно формированию пикселя по одному сэмплу. Именно поэтому, сглаживанию подвергаются только края полигонов, и ничего больше. В данном случае, края полигонов сглаживаются только по горизонтали, т. к. используются только 2 горизонтально расположенных сэмпла. Так, что качество этого режима оставляет желать лучшего.

Здесь и далее, на рисунке, зеленой линией, обозначена граница между двумя полигонами. Сэмплы, на основе которых рассчитывается цвет пикселя, изображены маленькими кружками. Один и тот же сэмпл отображается одним цветом.

Этот режим требует особых пояснений.

Проще всего это показать на примере "из жизни": у человека есть два рубля, а он хочет пять. Как это сделать проще всего? Естественно, стащить у соседей (что, конечно, будет неизбежно наказано). Но, не будем углубляться в криминал, а вернемся к нашему режиму.

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

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

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

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

Анти-алиасинг 4x (2х2) по девяти сэмплам.

Этот режим - аналог Quincunx, но только рассчитывающий четыре своих субпикселя (точно также, как при работе обычного режима 2х2) и "заимствующий" пять чужих, как это показано на рисунке. Достоинства и недостатки этого метода аналогичны Quincunx, но, поскольку доля честных сэмплов стала больше, размазанность изображения практически незаметна, а качество сглаживания повышается.

К сожалению, как и в случае с Quincunx, скорость работы этого метода заметно ниже аналогичного, "честного" метода - в данном случае 2х2.

Анти-алиасинг 4XS.

После выхода последнего, на сегодняшний день, ускорителя, анти-алиасинг NVIDIA приобрел, наконец, модное название: Accuview. Хотя, сам по себе, он практически не изменился. В драйверах был добавлен новый режим анти алиасинга - 4XS, который в закладках драйвера можно включить только при наличии карты на GeForce4, а через скрытые настройки - на любой карте семейства GeForce3. Если вы не являетесь счастливым обладателем карты на GeForce4, а всего лишь скромный обладатель GeForce3, то для включения этого режима придется либо залазить в реестр, либо просто не забывать, своевременно скачивать последние версии RivaTuner.

Суть нового режима анти-алиасинга в совместном использовании мультисэмплинга и суперсэмплинга для увеличения качества изображения. Проще всего это представить так: по горизонтали изображение сглаживается методом мультисэмплинга 1х2. Точно также, пиксель по горизонтали состоит из двух сэмплов, имеющих одинаковый цвет, если не находятся на краю полигона и два разных цвета, если на краю. Но, по вертикали, пиксель состоит не из одного такого блока из двух сэмплов, как режим мультисэмплинга 1х2, а из двух. Результирующий цвет пикселя определяется так: сначала находятся результирующие цвета верхнего и нижнего блока из двух сэмплов, затем они смешиваются. В итоге, пиксель рассчитывается на основе четырех сэмплов, точно также как и в режиме 4х. Но, в отличие от последнего, 4XS рассчитывает больше честных сэмплов и меньше использует один и тот же рассчитанный сэмпл (не более двух раз, в то время как 4x - до четырех раз).

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

Очевидно, что метод 4XS обеспечивает более качественное и полное сглаживание, чем режим 4x. Кроме краев полигонов он честно сглаживает по двум сэмплам все текстуры. А самое приятное заключается в том, что этот режим работает с той же скоростью, что и обычный 4x.

До сих пор мы рассматривали методы сглаживания, в которых сэмплы располагаются упорядоченно, в виде прямой упорядоченной решетки, подобных клеточной бумаге. Недостаток подобной техники в том, что при сравнительно небольшом количестве сэмплов (от четырех до девяти на пиксель), которые используются в современных ускорителях для формирования пикселя, очень плохо сглаживаются линии (границы полигонов), близкие к вертикальным или близкие к горизонтальным, т. е. угол наклона которых относительно прямых составляет всего 10-15 градусов. Это связано с тем, что такой "почти вертикальный" или "почти горизонтальный" край треугольника в половине случаев проходит между двумя пикселями и потому, сглаживание никак его не затрагивает:

Решить эту проблему можно двумя способами:

    1. Все больше увеличивать количество сэмплов, на основании которых формируется пиксель. Этот способ снижает вероятность того, что край полигона пройдет между двумя пикселями. Это катастрофически скажется на производительности и, к тому же, не решит проблему на 100%. 2. Изменить расположение сэмплов, то есть исказить обычную прямую решетку.

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

Фирма 3dfx предложила метод сглаживания, просто поворачивающий эту решетку на 20-30 градусов.

В результате линии, близкие к прямым, сглаживаются очень даже неплохо. К сожалению, проблему этот метод не снимает, так как линии, имеющие наклон около 30-45 градусов, точно также могут проскочить между двумя пикселями, не попав ни в один из них, следовательно, они будут сглаживаться очень плохо. Однако, по многим оценкам, на таких линиях алиасинг гораздо менее заметен, чем на линиях, близких к прямым. Поэтому, такая повернутая решетка, в большинстве случаев все-таки предпочтительнее, чем прямая.

Рассмотрим метод 3dfx. Он называется Rotated Grid Super Sampling (в дальнейшем RGSS). Основывается на технологии 3dfx T-Buffer, позволяющей рассчитать сразу четыре разных кадра, а потом их смешивать для получения широкого набора эффектов. Нас сейчас интересует только один из этих эффектов - полноэкранное сглаживание.

Ускоритель Voodoo5 - первый и единственный, поддерживающий технологию T-Buffer, а значит и RGSS. Карта снабжена двумя чипами VSA-100, каждый из которых может рассчитать и хранить один или два кадра. В результате, мы имеем два режима анти-алиасинга: 4x и 2x.

В отличие от обычного суперсэмплинга, RGSS рассчитывает не одно изображение в повышенном разрешении, а четыре одинаковых изображения в установленном на экране разрешении. На самом деле, эти четыре рассчитываемых изображения не совсем одинаковы. Поскольку результирующий пиксель по-прежнему состоит из четырех субпикселов, нужно определить их положение внутри пикселя. Как мы уже говорили, метод 3dfx предполагает, что все сэмплы внутри пикселя повернуты на 20-30 градусов:

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

Очевидно, что в данном случае честно сглаживаются по четырем сэмплам все пиксели экрана, а не только эффект алиасинга, как при использовании Accuview от NVIDIA. Из этого факта следуют естественные выводы: скорость падает не меньше, чем при использовании обычного суперсэмплинга (Ordered Grid Super Sampling - суперсэмплинг с прямой решеткой), но и удаленные текстуры тоже серьезно улучшаются, также как и при использовании OGSS.

Анти-алиасинг 2х.

Другой, более быстрый, но и менее качественный режим сглаживания. Это расчет только двух разных кадров и формирование финального пикселя по двум сэмплам. Очевидно, что в отличие от других рассмотренных методов, использующих для расчета пикселя два субпикселя, метод 3dfx сглаживает изображение не только по горизонтали, но и по вертикали. Хотя, совершенно не сглаживаются линии с наклоном около 60 градусов, этот режим, тем не менее, является одним из самых удачных, среди конкурентов в весовой категории 2х.

ATI Radeon 8500 (Smooth Vision)

В своем сверхновом ускорителе, способном на равных бороться с ускорителями NVIDIA GeForce3, ATI предложила новое решение полноэкранного сглаживания с фирменным названием Smooth Vision.

Это второй, после 3dfx метод, основанный на неупорядоченном расположении сэмплов внутри пикселя (так называемая искаженная решетка или jittered sample pattern). Но, в отличие от метода 3dfx, сэмплы не просто повернуты внутри пикселя. Каждый пиксель допускает восемь различных, заранее заданных расположения внутренних сэмпла:

[Антиалиасинг (antialiasing) сегодня]

Метод 3dfx сдвигает каждый пиксель одинаково в одном и том же направлении. В отличие от него, Smooth Vision сдвигает пиксели группами, причем каждая группа может быть сдвинута в любую сторону. В итоге, расположение сэмплов должно приближаться к идеалу, то есть полностью случайной решетке. А значит, метод должен одинаково хорошо справляться с линиями, проходящими под любыми углами.

SV оперирует с блоками из 16-ти сэмплов, на основе которых может рассчитываться различное количество результирующих пикселей (для режима 2х - 8 пикселей, для режима 4х - 4 пикселя). Каждый пиксель внутри этого блока имеет собственное, отличное от остальных пикселей, расположение внутренних субпикселов, наугад выбранное из восьми допустимых позиций.

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

Полноэкранное сглаживание SV имеет два основных режима работы: Quality и Performance. Они отличаются только тем, что первый честно рассчитывает заданное количество сэмплов (от 2х до 6х), а второй использует сэмплы соседних пикселей. Естественно, использование не своих субпикселей приводит к повышению скорости и некоторой смазанности изображения, о чем мы достаточно подробно говорили выше.

Искаженная решетка сэмплов позволяет делать некоторые интересные вещи, например, нечетное количество субпикселей на пиксель. Кроме того, как и у Voodoo 5, режим 2х дает действительно полное сглаживание, а не только по одной из координат, как у NVIDIA, даже более полное, чем у Voodoo5, поскольку сэмплы располагаются внутри пикселей намного более произвольно (случайно). Однако это не значит, что качество сглаживания будет на достаточном уровне.

Следует также отметить одну неприятную особенность драйверов Radeon 8500: на сегодняшний день, поддержка Smooth Vision реализована только в Direct3D, а в OpenGL используется самый обыкновенный суперсэмплинг, работающий гораздо медленнее и дающий худшее качество сглаживания. Будем надеяться, что эта досадная недоработка будет исправлена в самое ближайшее время.

Как видим, на рынке представлено не так уж много различных методов полноэкранного сглаживания и их достоинства и недостатки вполне очевидны. Стандартный метод суперсэмплинга, очевидно, устарел и уже не может рассматриваться как действительно серьезная реализация анти-алиасинга, поскольку его применение приводит к очень существенному падению скорости, при этом давая совсем не рекордное качество сглаживания.

Среди остальных методов можно выделить два направления развития: увеличение качества обычного суперсэмплинга и повышение скорости.

3dfx и ATI пошли по первому направлению, увеличив качество суперсэмплинга, поворачивая или располагая случайно сэмплы внутри пикселя, при этом немного оптимизировав скорость. Причем, ATI пошла гораздо дальше 3dfx, введя почти случайное расположение субпикселов и значительно лучше оптимизировав скорость. Кроме того, 3dfx больше не существует и ее последний продукт, Voodoo5, едва ли можно назвать для кого-то серьезным конкурентом, хотя бы по причине фактического отсутствия такового на рынке.

Метод, предлагаемый ATI, вероятно, является самым качественным из того, что реализовано до сих пор. К сожалению, производительность Radeon 8500 не позволяет использовать его с максимальными настройками в достойном разрешении. На сегодняшний день, для современных ускорителей намного важнее такой показатель сглаживания, как качество/падение скорости. Чем выше будет этот показатель, тем выше в итоге будет и качество, с которым можно будет играть с достойной скоростью. ATI увеличила этот показатель, увеличив качество. Но математика подсказывает и другой способ: уменьшить падение скорости.

Именно по этому пути и пошла NVIDIA, сглаживание которой по качеству не лучше суперсэмплинга, но зато гораздо быстрее по скорости, давая, в итоге, самый быстрый анти-алиасинг среди всех конкурентов.

Трудно однозначно назвать победителя. Режим Accuview 4XS дает хорошее качество при небольшом падении скорости. Зато режим SV Quality 4x дает несколько более высокое качество сглаживания, хотя и заплатить за него придется дороже. И не стоит забывать про анизотропную фильтрацию, которая еще больше усложняет проблему выбора. Я не возьмусь называть победителя, поскольку это будет исключительно мое субъективное мнение. Полагаю, если вы внимательно прочитали этот материал, то сможете самостоятельно сделать выбор.

Перспективы развития и выводы

Скорость трехмерных акселераторов растет с неудержимой скоростью, поэтому анти-алиасинг неизбежно будет становиться все более доступным и качественным. Естественно, будут совершенствоваться и методы сглаживания. Я думаю, в дальнейшем сохранится та же дилемма, что и сейчас: выбрать чуть более качественный метод и проиграть в скорости или выбрать чуть меньшее качество, но с большей скоростью. Но, скорее всего, каждый метод будет совершенствоваться по обоим направлениям сразу, повышая и качество и скорость. Мне, например, представляется очевидным следующий шаг Accuview: лучшим решением, повышающим качество и не сильно снижающим скорость, было бы введение смещенного расположения сэмплов внутри пикселей (при этом, как и раньше, сглаживать только края полигонов).

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

ATI до сих пор ведет смертельный бой с nVidia за право обладать короной 3D. В течение всего 2004 года компания ATI хоть и медленно, но неуклонно увеличивала свою рыночную долю, оттесняя лидера nVidia. Такой успех ATI обеспечили недорогие и достаточно производительные модели 2003 года - Radeon 9800 и 9600 - особенно на фоне ряда как технологических, так и маркетинговых провалов nVidia.

В 2004 году появилось множество усовершенствований в архитектуре графических процессоров, таких как PCI Express, SLI и GDDR-3, способных полностью изменить облик современных видеосистем.

Наиболее значимым событием стало активное внедрение нового последовательного интерфейса PCI Express х16. Новый интерфейс обеспечивает пропускную способность до 4 Гбайт/с (против 2,1 Гбайт/с у AGP 8X). Однако флагманские модели обоих конкурирующих гигантов - ATI X800 Pro и nVidia GeForce 6800 - изначально имели все-таки традиционный интерфейс AGP 8X.

Технология SLI (ScanLine Interleaving) предусматривает параллельное использование двух видеокарт с целью повышения производительности видеосистемы. (Помните разработку 3dfx образца 1998 года.) Для согласования данных и синхронизации видеокарты соединяются платой-перемычкой, надеваемой на специальные 26-контактные разъемы в верхней части плат. Разработчик технологии, компания nVIDIA, предполагает реализовать ее в видеопроцессорах GeForce 6800 и GeForce 6600. NVIDIA в этом году смогла опередить ATI и первой анонсировала чип нового поколения -- GeForce 7800 GTX. Что в нем появилось нового и станет ли он лидером на рынке видеоплат класса high-end? "от ATI для сжатия карт нормалей, смогут работать и на GeForce 7800. Разумеется, поддерживается и технология SLI. Кстати, совсем недавно в Интернете появилась информация о материнской плате ASUS A8N32-SLI Premium, предоставляющей пользователям два полноценных порта PCI Express х16. Так что SLI на такой плате будет работать на полных оборотах, что не может не радовать. Кроме полной поддержки DirectX 9.0c и OpenGL 2.0 заявлена реализация и некоторых возможностей операционной системы Longhorn, стандартов Windows Graphics Foundation WGF 1.0 и Longhorn Display Driver Model (LDDM). В частности, станет возможным осуществлять постобработку видео, аппаратное ускорение отрисовки сглаженного текста и составление рабочего стола в режиме реального времени. Заниматься производством видеоплат на базе нового графического процессора будут все крупные компании: Albatron, AOpen, ASUS, BFG, Biostar, Chaintech, Gainward, Galaxy, Gigabyte, InnoVISION, Leadtek, MSI, Palit, PNY, Point of View, Prolink, Sparkle и XFX.

Подводя промежуточный итог, все же стоит отметить, что каких-либо кардинальных изменений, сравнимых с переходом от GeForce 2 к GeForce 3, в чипе нет. Поэтому новое поколение графических процессоров от NVIDIA стоит рассматривать как весьма существенную доработку архитектуры предыдущего поколения -- CineFX 3.0. Ведь, как и старая архитектура, новая ориентирована на Shader Model 3.0, то есть на вершинные и пиксельные шейдеры версии 3.0. Рассмотрим их более детально. CA..EII. A IOI‚AEA..

По сравнению с GeForce 6800 в качественном плане никаких изменений в архитектуре вершинных конвейеров не произошло. Внутреннее устройство идентично конвейерам GeForce 6800, поддерживаются вершинные шейдеры версии 3.0. Помимо роста числа вершинных конвейеров (с шести до восьми) заявлена низкоуровневая оптимизация скалярных ALU и блоков выборки текстур. У каждого конвейера есть блок выборки текстур, в общей сложности их восемь. Количество пиксельных конвейеров возросло с 16 до 24, что само по себе повлечет существенный рост производительности. Однако число блоков растеризации по-прежнему равно 16. И хотя чип может обработать до 24 пикселей за такт, процесс растеризации возможен лишь для 16 пикселей. Таким образом, теоретическая пиксельная скорость заливки идентична GeForce 6800 Ultra. Как объясняет NVIDIA, в случае активного использования пиксельных шейдеров и мультитекстурирования 16 блоков растеНовая видеоплата опережает Radeon X850XT почти по всем показателям. Стоит отметить существенно возросшую скорость выполнения пиксельных шейдеров в синтетических тестовых пакетах 3DMark 2003 и 3DMark 2005. В этих тестах GeForce 7800 GTX превосходит платы предыдущего поколения в лице Radeon X850XT и GeForce 6800 Ultra в два и более раз. Во всех остальных сценах тестовых пакетов наблюдается закономерный рост благодаря увеличению числа пиксельных и вершинных конвейеров. Отметим, что по мере роста нагрузки на видеоплату (увеличения разрешения, включения полноэкранного сглаживания и анизотропной фильтрации) Radeon X850XT все ближе подбирается к новому лидеру, что несколько настораживает. Причиной такого поведения, скорее всего, является "сырая" версия драйверов, ведь GeForce 7800 GTX появилась совсем недавно. И, наконец, подведем итог. Графический чип GeForce 7800 GTX -- новый лидер рынка. Конечно, такие выдающиеся результаты в первую очередь возможны благодаря наличию восьми пиксельных и двух вершинных дополнительных конвейеров. Ну и, конечно, различного рода оптимизации конвейеров. Новая реализация режима сглаживания также придется по вкусу боль - шинству пользователей. Остается лишь один вопрос: как долго NVIDIA сможет удерживать пальму первенства? Чтобы на него ответить, достаточно дождаться выхода в свет чипа R520 от ATI. На момент подготовки этого материала процессор еще не появился, однако его анонс был уже очень близок. Очевидно, что ATI обязательно ответит NVIDIA. И, конечно же, не стоит забывать про Ultra-модификацию процессора G70. Помимо разгона в чипе могут появиться дополнительные конвейеры. По не-которым данным, общее число пиксельных конвейеров может возрасти до 32 с соответствующим ростом производительности. Основной этап битвы за рынок high-end еще впереди.

Похожие статьи




Вместо эпилога: год 2004 - Компьютерная графика и ее аппаратная реализация (обзор видеокарт)

Предыдущая | Следующая