Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

железки и куча пластика для начинающего чайника


Информационный Канал Subscribe.Ru


Здравствуйте, уважаемые подписчики, сегодня мы поговорим о тестах современных видеокарт. На производительность современного игрового компьютера оказывают влияние следующие параметры: частота и тип процессора, объем оперативной памяти и тип видеокарты. Сегодня мы сравним некоторые модели видеоадаптеров, а в одном из ближайших следующих номеров расскажем о влиянии остальных параметров на скорость работы игр и других приложений. Первые ускорители В те далекие времена, когда первые «персоналки» существовали только в воображении инженеров, видеокарты уже вовсю работали в терминалах, подключавшихся к большим ЭВМ. Получая команды через последовательный порт, предки современных графических ускорителей рисовали на экранах так называемые примитивы — отрезки, прямоугольники, круги. Скорость работы этих устройств была невелика, так что в Quake на больших ЭВМ никто не играл. В первых персональных компьютерах видеокарты, естественно, тоже были, но то, что мы называем 3D-ускорителями, появилось сравнительно недавно — всего несколько лет назад. Одним из первых работоспособных устройств была плата Voodoo1 компании 3dfx, представленная на выставках E3 и ECTS в 1996 году. Конечно, другие компании тоже выпускали видеоадаптеры, претендовавшие на гордое звание 3D-ускорителей, но именно Voodoo1 стала первой платой, обеспечивавшей впечатляющее (по тем временам) качество графики. Одновременно с Voodoo свет увидела небезызвестная Ларочка Крофт — игра Tomb Raider, показанная широкой публике, утилизировавшая возможности новой железки. Разработчики Tomb Raider рискнули сделать игру именно под ускоритель Voodoo, рискнули и выиграли. Почему? Да потому, что прочие игры того времени, в лучшем случае частично поддерживающие функции 3D, на обычных «плоских» видеокартах сильно тормозили или вообще отказывались работать. Результат известен: Tomb Raider и 3dfx Voodoo1 сторицей оправдали надежды разработчиков и весьма успешно продавались долгое время. Зdfx — первенец эпохи 3dfx Voodoo1 не был полноценной видеокартой. Это был 3D-ускоритель, который для нормальной работы требовал наличия стандартного видеоадаптера, к которому подключался специальным кабелем. Сигнал с выхода видеоадаптера подавался на ускоритель, а уже с его выхода шел на монитор. Когда 3D-ускоритель не использовался, сигнал проходил через него без обработки (этот режим назывался pass-trough). В момент переключения игры в режим 3D изображение отключалось, и на вход монитора начинало поступать «трехмерное» изображение с Voodoo. Такая схема, к сожалению, снижала качество обычного видеосигнала: картинка становилась чуть менее четкой. Из-за этого специалисты, профессионально работающие с графикой, Voodoo1 не любили. Следующий видеоадаптер компании 3dfx назывался Voodoo2. Он был сделан по тому же принципу, но уже не имел той популярности, что Voodoo1. Дело в том, что на рынке к тому времени уже появились 3D-ускорители, способные работать «в одиночестве», а второй «вуду» по-прежнему нуждался в наличии обычного видеоадаптера. Чем же был интересен Voodoo2? В первую очередь тем, что позволял вдвое увеличить производительность графической подсистемы. Для этого нужно было просто установить рядом две одинаковые карты. Видеопроцессоры обоих «вуду» рассчитывали изображение чересстрочно, строчку — первый, следующую — второй. И время, потребное на генерацию кадра, уменьшалось ровно вдвое. Позднее эта идея получила развитие в серии процессоров VSA100. Потом 3dfx все же выпустила полноценный графический ускоритель — Voodoo3, который пользовался успехом и оставался конкурентоспособным в течение долгого времени. Несмотря на то что карта не поддерживала 32-битный цвет, она обладала отличными скоростными показателями. Однако появление новой технологии T&L, заметно увеличивающей качество рендеринга, означало закат 3dfx. Компания просто не смогла вовремя отследить рыночные тенденции. Так что сейчас на рынке графических ускорителей уже другой монополист — компания nVIDIA. Война стандартов С появлением первых 3D-ускорителей возник вопрос о создании универсального интерфейса для программирования и использования этих карт. Компания Microsoft выпустила расширение Direct3D (D3D) своей библиотеки DirectX. К сожалению, стремление сделать универсальный продукт, охватить все особенности видеопроцессоров того времени подвело разработчиков и продукт получился не очень качественным. В первых версиях D3D интерфейс был ужасно запутанным, множество медленных и ненужных функций затрудняли жизнь программистам не меньше, чем изрядное количество ошибок. В то же время 3dfx вместе с серией карт Voodoo выпустила простую и понятную библиотеку Glide. Этот интерфейс тоже имел недостаток: он поддерживался только картами Voodoo и не являлся открытым, но все преимущества аппаратного ускорения были налицо. Сначала программисты писали и отлаживали коды под Glide, а затем к готовой игре «прикручивался» D3D. Но время шло, и постепенно Glide себя исчерпал. Разработчики обратили внимание на открытый и хорошо отлаженный интерфейс OpenGL. Компания 3dfx была вынуждена уйти со сцены, пальма первенства перешла в руки Direct3D и OpenGL. Эволюция графических процессоров При использовании графических ускорителей первых двух поколений до 80% процессорного времени расходовалось на обработку процедур формирования и вывода трехмерного изображения. Так что для расчета логики игрового мира оставалось менее 20%. Все хотели делать игры с красивой графикой, но игры эти постепенно «тупели», ведь для высокого AI процессору нужно как следует потрудиться. Тестирования показывали, что большую часть времени процессор тратит на расчет освещенности, на изменение координат треугольников и векторов. Напрашивалось решение — освободить ЦПУ от этой работы, переложив ее на специализированный вычислитель, расположенный на видеокарте. Так удастся не только существенно разгрузить центральный процессор компьютера, но и повысить общую производительность системы, ведь специально спроектированный вычислитель будет выполнять те же операции быстрее. Первой эту идею реализовала на практике компания nVIDIA, создав революционное решение — видеопроцессор GeForce256. Платы на базе GeForce256 в демонстрационных тестах показывали невиданные по тем временам результаты, заметно увеличивая количество треугольников в игровом кадре. Стало появляться все больше игр, по полной программе задействующих возможности новейших видеокарт с блоком T&L. Благодаря наличию в Direct3D программной эмуляции большинства аппаратных функций ускорителя, программы могли обходиться и без блока T&L, но в этом случае они работали гораздо медленнее. T&L Столь модная в последние два года аббревиатура T&L (Transformation Clipping & Lighting) переводится как «трансформация, экранирование и освещение». В применении к 3D-ускорителям наличие T&L означает, что видеокарта сама выполняет ряд ресурсоемких операций, разгружая центральный процессор. Остановимся на этом моменте подробнее. Трансформация — это пересчет координат треугольников, из которых составлена вся картинка, из одной системы координат в другую. Изначально программа представляет кадр изображения как набор треугольников с текстурами, заданными источниками света и известным положением камеры. Вся сцена привязывается к мировой системе координат (то есть к осям X, Y, Z, пересекающимся в некой точке пространства). Задача трансформационного блока ускорителя — пересчитать положения всех объектов в координаты относительно камеры, а затем перевести сцену в плоскость экрана. Следующее действие — экранирование: удаляются треугольники, не попавшие в кадр камеры. Последний шаг — освещение (самый сложный). Дело в том, что освещенность вершин треугольников приходится вычислять для всех источников света, причем для каждой точки надо отдельно учитывать две составляющие светового потока: зеркальную, которая дает четкое отражение (блики и т. п.), и диффузную, отвечающую за рассеянный свет. Затем рассчитываются все точки треугольника. Тут можно идти двумя путями: либо применить метод интерполяции, используя в качестве базовых точек данные по вершинам треугольника, либо провести полный расчет освещения для каждого пиксела, что дает более качественную картинку, но занимает значительно больше времени. Кроме расчета освещенности, ускоритель производит множество других операций с треугольниками, например наложение тумана, различные виды сглаживания. Операции эти являются очень ресурсоемким. В следующем выпуске мы поговорим дальше.

http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное