Зачастую неопытному геймеру трудно подобрать действительно современную видеокарту, так как производители карт с целью сбыта старых запасов идут на разные ухищрения с манипуляцией названий и минимальной косметической доработкой некоторых залежавшихся на складах "устарелых" чипов. Что из этого следует? Карта вроде бы выпущена недавно, но современные игровые технологии не поддерживает. Поэтому и смысл этой подборки в том, чтобы пользователь выяснил для себя, чего он лишается и надо это ему вообще. Описание Shader Model 3.0 Необходимость поддержки современными играми и видеоакселераторами Shader Model 3.0 стала главной темой практически на всех тематических форумах и конференциях. Но так ли она нужна и что конкретно дает эта технология рядовому геймеру? Ведь не зря же компания ATI довольно долго оставляла без внимания новые веяния игровой моды и добавила поддержку Shader Model 3.0 в свои видеокарты только совсем недавно, с анонсом семейства чипов R5xx. В играх в последнее время появилось огромное количество эффектов, которые позволяют создавать реалистичные и запоминающиеся фрагменты. В связи с этим было решено позволить игре управлять графическим процессором посредством понятных ядру наборов команд. Свод таких команд назвали шейдерами (shader). Существует два типа шейдеров: вершинные (vertex) и пиксельные (pixel). Первые отвечают за построение отдельных вершин полигонов, помогают реализовать скелетную анимацию, рельефы земли и воды, используются в создании эффекта морфинга. Вторые заведуют отдельными пикселами (точками) картинки и их обработкой перед самым выводом на экран, с их помощью получаются затемнение и освещение, преломление лучей света, полноэкранные и HDR-эффекты. Довольно долгое время разработчики довольствовались Shader Model 2.0, но на данный момент все бόльшую популярность приобретает расширенный набор инструкции из пакета DirectX 9.0c – Shader Model 3.0. В нем имеется поддержка последовательностей длиной в 65 535 команд (против 96 у предыдущей модели), реализованы плавные динамические переходы, есть возможность применения шейдеров при включении антиалиасинга, интерполяция и рендеринг изображений с использованием чисел с плавающей запятой в диапазоне 32 бита (в то время как Pixel Shader 2.0 работает только с целыми числами и 8-битовым диапазоном). Все эти нововведения позволяют получить более красивую и реалистичную картинку в современных играх, нежели при задействовании предыдущей версии шейдеров. Но если игра требует поддержки шейдеров третьего поколения, это вовсе не означает, что в системе с видеокартой, не использующей Shader Model 3.0, она не будет работать. Просто движок станет применять ту версию программы, которая совместима с данным акселератором. Описание HDR На данный момент принята цветовая модель передачи изображений RGB (red, green, blue), которую еще называют LDRi (Low Dynamic Range image). Она разрабатывалась для современных устройств, таких как телевизоры, мониторы и т. д. Суть этой схемы состоит в том, что любой оттенок можно выразить сочетанием трех основных цветов – красного, зеленого и синего – с правильно подобранной интенсивностью свечения, которая представляется в виде 256 градаций на цветовой канал. Само число 256 появилось как компромисс между производительностью видеоподсистемы, требованиями к реалистичности изображения и двоичной природой компьютерных вычислений (256 = 28). В результате исследований было выявлено, что 16,7 млн (256×256×256) оттенков вполне достаточно для правильной передачи изображений фотографического качества. Но одна из недоработок данной модели всплыла только сегодня, когда компьютерные игры развиваются особенно интенсивно и выдвигаются высокие требования к реалистичности картинки. Модель RGB не может передать многие эффекты, к которым человек настолько привык в повседневной жизни, что не обращает на них внимания – например временное ослепление при выходе из темного помещения, солнечные зайчики на блестящих поверхностях и др. В ПК-играх, в частности в современных шутерах, такие эффекты просто оживляют виртуальный мир. Именно для получения правдоподобной графики и предназначена модель HDRi (High Dynamic Range image), где каждая точка изображения описывается реальными физическими параметрами. Если одна точка в действительности ярче другой в два раза, то и на картинке она должна быть именно вдвое ярче. Основным отличием HDRi от RGB является манипулирование вещественными, а не целыми числами, и здесь уже не обойтись одним байтом на канал цвета. Естественно, это приводит к возрастанию требований к графическим акселераторам и снижению уровня fps. Новая технология задействуется в так называемом HDR-рендеринге. Суть процесса состоит в том, что при применении чисел с плавающей запятой получается намного более реалистичный результат, нежели при расчетах с целочисленной моделью RGB. В современных играх преобладает формат OpenEXR, разработанный студией Industrial Light and Magic. С учетом использования 16-битовых вещественных чисел на каждый канал в итоге получается 48 битов на пиксел, что, согласитесь, немало. И именно благодаря этому мы видим на мониторе не блеклое грязно-желтое солнце и сероватое небо, а яркую картинку, очень приближенную к реальности. Стоит упомянуть, что применение HDR-рендеринга и формата OpenEXR допустимо только в случае поддержки игровым акселератором Shader Model 3.0 и выше. Таким образом, преимущества новой технологии передачи изображения в играх вы сможете оценить только на видеокартах GeForce серий 6 и 7, а также на тысячной линейке ATI. Как «собирается» 3D-сцена Максимально упрощенно это выглядит примерно так: вначале подготовленные центральным процессором данные о вершинах полигонов проходят стадию расчета, после чего с использованием его результатов осуществляется построение примитивов – треугольников, линий и точек. Следующий этап – текстурирование и наложение специальных эффектов – выполнение пиксельных шейдеров. Затем идет растеризация, т. е. превращение трехмерной сцены в растр – готовый двухмерный кадр, который через фреймбуфер будет выведен непосредственно на экран. На этой же стадии происходит отсечение невидимых с текущего ракурса поверхностей с помощью данных Z-буфера, расчет антиалиасинга (если он применяется) и наложение постфильтров.
|