Сообщение на тему «Видеокарты»

Материал из Wiki 54
Перейти к: навигация, поиск
Videocarta.jpg
]


Введение

Мало кто задумывается о том, насколько сложным на самом деле является процесс обработки различных графических данных с целью получения конечного изображения, отображаемого на мониторе (например, в компьютерных играх). Этот процесс требует осуществления огромного количества точных расчетов (создание вершин, их собирание в примитивы (треугольники, линии, точки и т.д.), создание пиксельных блоков, операции освещения, затенения, текстурирования, присвоения цвета и др.). Поскольку картинка в игре постоянно изменяется, все расчеты должны производиться на очень высокой скорости, чтобы обеспечить формирование достаточного количества кадров, выводимых за 1 секунду. Для человеческого глаза комфортным является уровень выше 24 кадров в секунду (FPS, Frames Per Second). Если этот показатель ниже, человек будет замечать «торможение».

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

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

Из чего состоят видеокарты

Современная графическая карта состоит из следующих частей:


• Графический процессор (графическое ядро, GPU (Graphics processing unit - графическое процессорное устройство) – процессор, занимающийся расчётами и формированием графической информации, выводимой на монитор, является основой видеокарты и по своей сложности практически не уступает центральному процессору компьютера, а иногда и превосходит его. Во многом им определяются основные характеристики видеокарты;


• Видеопамять – оперативная память для видеокарты.


• Видеоконтроллер – отвечает за правильное формирование и передачу нужной информации из видеопамяти на RAMDAC.


• RAMDAC (Random Access Memory Digital-to-Analog Converter) или цифро-аналоговый преобразователь (ЦАП) – устройство, осуществляющее преобразование цифровых результатов работы видеокарты в аналоговый сигнал, отображаемый на мониторе. Возможностями этого устройства определяется количество отображаемых цветов, насыщенность картинки и др. Цифровые мониторы, проекторы и др. устройства, подключаемые к цифровым разъемам видеокарты, используют собственные цифро-аналоговые преобразователи и от RAMDAC видеокарты не зависят;


• Видео-ПЗУ (Video ROM) – BIOS - совокупность правил и алгоритмов, определенных производителем, по которым составные части видеокарты работают и взаимодействуют между собой.


• Система охлаждения – устройство, осуществляющее отвод и рассеивание тепла от видеопроцессора, видеопамяти и других компонентов графической платы с целью обеспечения нормального температурного режима их работы. Несмотря на то что 60% глобальных поставок графических ускорителей принадлежит интегрированным решениям Intel, самая ожесточенная борьба ведется между AMD и NVIDIA.

Противовстояние

В середине 1990-х рынок видеоадаптеров делило множество компаний, и почти каждая из них пыталась реализовать ускорение 3D-графики в своих продуктах. Из этой толкучки победителями вышли два производителя: ATI, поглощенная в 2006 году компанией AMD, и NVIDIA. Они примерно поровну поделили рынок дискретных графических адаптеров, постоянно соревнуясь и конкурируя между собой. У каждой из них в арсенале есть уникальные разработки: к примеру, платы NVIDIA так пока и не научились работать с шестью мониторами одновременно, а продукты ATI лишены поддержки PhysX, технологии ускорения расчетов физики в игровых программах.

Трассировка лучей

Трассировка лучей — это технология рендеринга (то есть отрисовки, создания) трехмерной графики, где используется этот принцип. Специальный алгоритм отслеживает путь луча от объекта освещения, а затем создает симуляцию того, как он взаимодействует с объектами: отражается, преломляется и так далее. Как вы уже могли догадаться, Ray Tracing позволяет создавать невероятно реалистичное освещение, практически неотличимое от реального. Алгоритм принимает во внимание, где именно луч света касается объекта, учитывает свойства поверхности и вычисляет, как в таких случаях поведет себя этот луч, где он начнет рассеиваться, где — отражаться от других объектов, где сменит цвет, а где отбросит тень.


В каком-то смысле трассировка лучей — это такая попытка симулировать человеческое зрение. И она гораздо сложнее классического и использующегося сейчас в играх метода рендеринга — растеризации. При растеризации компьютер постоянно конвертирует трехмерную графику в двухмерные пиксели и, собственно, выводит их на экран. Большая часть эффектов, тех же теней или бликов сейчас создается благодаря шейдерам — именно шейдеры превращают статичные пиксели в тот самый «графон». В общем, если Ray Tracing — это симуляция, то растеризация — симуляция симуляции. Однако у трассировки лучей есть один гигантский недостаток — она невероятно, изуверски требовательно к ресурсам. Обсчитать такое количество лучей, отследить путь каждого из них, вычислить преломления, воссоздать эффект прозрачности, — все это для видеокарты очень непросто. При создании CGI-графики и трехмерных мультфильмов с этим мирятся — там один кадр может сутки рендериться, но вот в играх, где считаться все должно в реальном времени, да еще и при приемлемой частоте кадров… Именно поэтому трассировка лучей долгое время была «Священным Граалем» игрового 3D. И именно поэтому современные трехмерные мультфильмы такие красивые, а некоторые вообще выглядят так, словно кто-то поставил камеру в волшебный мир и заснял все прямо как есть.


Видеокарты на архитектуре Turing — первые специально «заточенные» под технологию трассировки лучей в истории. Конечно, пока речь идет о гибридном рендеринге — большая часть объектов будет рендериться с помощью растеризации, но свет и тени, отражения, — здесь и проявит себя Ray Tracing.