logo search
ОЭВМ

28. 2D и 3d графические ускорители. Какие эффекты реализуются на аппаратном уровне в 3d графическом процессоре.

Графические изображения часто состоят из отдельных отрезков прямых, дуг, окружностей, точек и т.д. В некоторые видеоадаптеры были введены специальные акселераторы (ускорители) и графические процессоры для ускорения подобных построений. Например, если строится окружность обычным способом, то нужно рассчитать координаты сотен ее точек, что сильно загружает центральный процессор. Но в адаптере с 2D-графическим процессором от центрального процессора поступает небольшой пакет данных, указывающих координаты центра окружности и её радиус. Расчет по ним осуществляет уже графический процессор – а основной при этом занят другими вычислениями. Это резко уменьшает время графических построений. Наиболее совершенные видеоадаптеры поддерживают быстрое построение трехмерных объектов – 3D-графики. Для этого в них применяются 3D-процессоры. Иногда их именуют Doom-процессорами по имени популярной игры с трехмерной графикой. Такими процессорами поддерживается и технология создания и быстрого перемещения спрайтов – подвижных объектов, составленных из ряда слоев – полупрозрачных и прозрачных. Спрайты давно используются в играх для создания быстро перемещаемых по экрану сложных объектов с изменяющейся формой и видом (например, человечков, машин, облаков, самолетов и т.д.). Построение 3D-объектов обычно ведется в две стадии. Во время первой – геометрической обработки изображения – оно разбивается на треугольники или реже на многоугольники, координаты углов которых пересчитываются при необходимости построения 3D-объектов в динамике их перемещения по экрану дисплея. Вторая стадия заключается в закраске многоугольников с учетом различных световых эффектов отражения и рассеивания света от внешнего источника света, освещающего объект, наложении текстуры и т.д. Попробуем разобраться, что же конкретно умеет графический 3D-процессор. Текстурирование (texture mapping). Это самый распространенный эффект для моделирования поверхностей. Например, фасад здания потребовал бы отображения множества граней для моделирования множества кирпичей, окон и дверей. Однако текстура (изображение, накладываемое на всю поверхность сразу) дает больше реализма, но требует меньше вычислительных ресурсов. Filtering Билинейная фильтрация - метод устранения искажений изображения. При медленном вращении или движении объекта могут быть заметны перескакивания пикселов с одного места на другое, что и вызывает мерцание. Mip-mapping Текстуры, с помощью которых формируется поверхность объекта, изменяют свой вид в зависимости от изменения расстояния от объекта до положения глаз зрителя. anti-aliasig- способ обработки пикселов для получения более четких краев (границ) изображения. Наиболее часто используемая техника - создание плавного перехода от цвета линии или края к цвету фона. Alpha blending реальный мир состоит из прозрачных, полупрозрачных и непрозрачных объектов. Для учета этого обстоятельства, применяется Alpha blending- способ передачи информации о прозрачности полупрозрачных объектов и т.д.