|
Технологии видеокарт
В первой части нашего руководства по видеокартам для начинающих пользователей мы рассмотрели ключевые компоненты: интерфейсы, выходы, систему охлаждения, графический процессор и видеопамять. Во второй части мы поговорим о функциях и технологиях видеокарт.
Базовые компоненты видеокарты:
- выходы;
- интерфейсы;
- система охлаждения;
- графический процессор;
- видеопамять.
Часть 2 (эта статья): графические технологии:
- словарик;
- архитектура графического процессора: функции
вершинные/пиксельные блоки, шейдеры, скорость заполнения, текстурные/растровые блоки, конвейеры; - архитектура графического процессора: технология
техпроцесс, частота графического процессора, локальная видеопамять (объём, шина, тип, частота), решения с несколькими видеокартами; - визуальные функции
DirectX, высокий динамический диапазон (HDR), полноэкранное сглаживание, текстурная фильтрация, текстуры высокого разрешения.
Словарик базовых графических терминов
Частота обновления (Refresh Rate)
Как в кинотеатре или на телевизоре, ваш компьютер симулирует движение на мониторе, выводя последовательность кадров. Частота обновления монитора указывает на то, сколько раз в секунду на экране будет обновляться картинка. Например, частота 75 Гц соответствует 75 обновлениям в секунду.
Если компьютер обрабатывает кадры быстрее, чем может выводить монитор, то в играх могут появиться проблемы. Например, если компьютер просчитывает 100 кадров в секунду, а частота обновления монитора составляет 75 Гц, то из-за накладок монитор может выводить только часть картинки за период своего обновления. В итоге появляются визуальные артефакты.
В качестве решения можно включить V-Sync (вертикальную синхронизацию). Она ограничивает число выдаваемых компьютером кадров до частоты обновления монитора, предотвращая появление артефактов. Если включить V-Sync, то число просчитываемых в игре кадров никогда не превысит частоту обновления. То есть при 75 Гц компьютер будет выводить не более 75 кадров в секунду.
Пиксель (Pixel)
Слово "Pixel" расшифровывается как "picture element" - элемент изображения. Он представляет собой крошечную точку на дисплее, которая может светиться определённых цветом (в большинстве случаев оттенок выводится сочетанием трёх базовых цветов: красного, зелёного и синего). Если разрешение экрана составляет 1024x768, то на нём можно заметить матрицу из 1024 пикселей по ширине и 768 пикселей по высоте. Все вместе пиксели и составляют изображение. Картинка на экране обновляется от 60 до 120 раз в секунду, в зависимости от типа дисплея и данных, выдаваемых выходом видеокарты. ЭЛТ-мониторы обновляют дисплей строчка за строчкой, а плоские ЖК-мониторы могут обновлять каждый пиксель по отдельности.
Вершина (Vertex)
Все объекты на 3D-сцене состоят из вершин. Вершина - точка в трёхмерном пространстве с координатами X, Y и Z. Несколько вершин можно сгруппировать в полигон: чаще всего это треугольник, но возможны и более сложные формы. Затем на полигон накладывается текстура, что позволяет объекту выглядеть реалистично. 3D-куб, показанный на иллюстрации выше, состоит из восьми вершин. Более сложные объекты имеют кривые поверхности, которые на самом деле состоят из очень большого числа вершин.
Текстура (Texture)
Текстура - это просто 2D-картинка произвольного размера, которая накладывается на 3D-объект, чтобы симулировать его поверхность. Например, наш 3D-куб состоит из восьми вершин. До наложения текстуры он выглядит как простая коробка. Но когда мы нанесём текстуру, то коробка становится окрашенной.
Шейдер (Shader)
Сегодня существует два вида шейдеров: вершинные и пиксельные. Вершинные программы-шейдеры могут изменять или трансформировать 3D-объекты. Пиксельные программы-шейдеры позволяют менять цвета пикселей на основе каких-либо данных. Представьте себе источник света на 3D-сцене, который заставляет светиться освещаемые объекты ярче, и в то же время, приводит к отбрасыванию тени на другие объекты. Всё это реализуется с помощью изменения цветовой информации пикселей.
Пиксельные шейдеры используются для создания сложных эффектов в ваших любимых играх. Например, код шейдера может заставить пиксели, окружающие 3D-меч, ярче светиться. Ещё один шейдер может обработать все вершины сложного 3D-объекта и симулировать взрыв. Разработчики игр всё чаще прибегают к помощи сложных программ-шейдеров для создания реалистичной графики. Практически любая современная игра с богатой графикой использует шейдеры.
С выпуском следующего интерфейса прикладного программирования (API, Application Programming Interface) Microsoft DirectX 10 на свет выйдет третий тип шейдеров под названием геометрические шейдеры. С их помощью можно будет ломать объекты, модифицировать и даже уничтожать их в зависимости от требуемого результата. Третий тип шейдеров можно будет точно так же программировать, как и первые два, но роль его уже будет другой.
Скорость заполнения (Fill Rate)
Очень часто на коробке с видеокартой можно встретить значение скорости заполнения. В принципе, скорость заполнения указывает на то, с какой скорость графический процессор может выдавать пиксели. У старых видеокарт можно было встретить скорость заполнения треугольников (triangle fill rate). Но сегодня выделяют два типа скорости заполнения: пиксельную (pixel fill rate) и текстурную (texture fill rate). Как уже говорилось, пиксельная скорость заполнения соответствует скорости выдачи пикселей. Она рассчитывается как число растровых операций (ROP), помноженное на тактовую частоту.
Текстурную скорость заполнения ATi и nVidia считают по-разному. nVidia считает, что скорость получается умножением числа пиксельных конвейеров на тактовую частоту. А ATi умножает число текстурных блоков на тактовую частоту. В принципе, оба способа корректны, поскольку nVidia использует по одному текстурному блоку на блок пиксельных шейдеров (то есть по одному на пиксельный конвейер).
С учётом данных определений позвольте двинуться дальше и обсудить наиболее важные функции графического процессора, что они делают и почему они столь значимы.