- •1. Графические данные и их классификация.
- •2. Алгоритмы компьютерной графики.
- •3. Аппаратные средства компьютерной графики.
- •4. Понятие геометрической машины. Структурная схема графической системы.
- •5. Базовая графическая система (бгс). Gks – международный стандарт на бгс.
- •6. Элементарные (базовые) и комбинированные операции на плоскости.
- •7. Элементарные (базовые) и комбинированные операции в пространстве.
- •8. Пространственное вращение вокруг произвольной оси.
- •9. Классификация плоских проекций.
- •10. Ортографическая проекция
- •11. Геометрические построения в диметрической проекции.
- •12. Геометрические построения в изометрической проекции.
- •13. Косоугольные проекции.
- •14. Виды перспективного проецирования.
- •15. Перспективная одноточечная проекция.
- •16. Перспективная двухточечная проекция.
- •17. Перспективная трехточечная проекция.
- •32. Каркасные модели. Модели твердого тела.
- •33. Параметрическое описание пространственных кривых. Модели кривых линий.
- •34. Представление пространственных кривых в форме Эрмита.
- •35. Представление пространственных кривых в форме Безье.
- •36. Кривые Бернштейна-Безье.
- •37. Представление пространственных кривых в сплайновой форме.
- •44.Колориметрия. Законы Грассмана.
- •45.Табличные и библиотечные форматы представления цвета.
- •46. Базовые цветовые модели, ориентированные на аппаратуру.
- •47.Телевизионные цветовые модели.(yiq и yuv)
- •48.Модели цифровой фотографии
- •49. Художественные цветовые модели, или
- •50.Абстрактные цветовые модели cie xyz и cie l*a*b*.
- •51. Модель освещения, используемая для построения реалистических изображений.
- •52.Модель освещения с учетом микрогеометрии поверхностей объектов.
- •53.Учет коэффициента Френеля в модели освещения с учетом микрогеометрии поверхностей объектов.
- •54.Функция распределения микрограней в модели освещения с учетом микрогеометрии поверхностей объектов.
- •55.Функция ослабления света на микрогранях в модели освещения с учетом микрогеометрии поверхностей объектов.
- •56.Моделирование прозрачности и теней.
- •57.Методы трассировки лучей. Алгоритмы прямого хода луча.
- •58.Методы трассировки лучей. Алгоритмы обратного хода луча.
- •59.Построения реалистических изображений методом излучательности.
- •60.Модель закраски Гуро.
- •61.Модель закраски Фонга.
- •62.Алгоритм отсечения лучей.
- •63.Алгоритм двоичного разбиения пространства (bsp-алгоритм).
- •66. Текстурирование объектов
- •67.Классификация методов сжатия графической информации.
- •68.Метод группового кодирования (rle-алгоритм).
- •69.Методы кодирования строк бит переменной длины. Алгоритм Хаффмена и арифметическое кодирование.
- •70.Алгоритмы сжатия со словарем (lz-алгоритмы).
- •71.Алгоритм сжатия jpeg.
- •72.Алгоритм волнового сжатия (вейвлет-преобразование).
- •73.Фрактальная математика и фрактальное сжатие.
- •75.Форматы представления видеоданных: Microsoft riff avi, mpeg-1,2,4, QuickTime
- •9. Форматы mpeg
- •80. Логические устройства стандартной видеосистемы пк
- •81. Современные режимы работы видеосистем
- •82. Организация взаимодействия в современных видеосистемах пк. Аппаратные интерфейсы
- •83. Графические процессоры ati и nVidia
- •84. Ускорение вычислений при помощи технологий sli и CrossFire
- •18. Виды растровой развертки.
- •19. Алгоритм Брезенхема растровой развертки отрезков прямых.
- •20. Алгоритмы Брезенхема растровой развертки окружностей.
- •21. Построчный алгоритм растровой развертки сплошных областей.
- •22. Алгоритм растровой развертки сплошных областей с затравкой.
- •23. Алгоритм отсечения отрезков на плоскости.
- •24. Алгоритмы отсечения многоугольников на плоскости.
- •25. Алгоритмы отсечения в пространстве изображений
- •26. Алгоритмы отсечения в пространстве объектов
- •27. Алгоритмы сортировки по глубине.
- •28. Простейшие алгоритмы масштабирования растровых изображений.
- •29. Масштабирование растровых изображений с использованием форм Безье и в-сплайнов.
- •30. Алгоритмы фильтрации растровых изображений, базирующиеся на свертке.
- •31. Медианная фильтрация растровых изображений.
- •76. Интерфейс Windows gdi
- •77.Интерфейс Microsoft Windows DirectX.
- •78.Интерфейсы Microsoft Windows DirectDraw и DirectAnimation.
- •78.Интерфейс Microsoft Windows Direct3d.
- •79.Интерфейс по стандарту OpenGl.
84. Ускорение вычислений при помощи технологий sli и CrossFire
Для повышения производительности видеосистем ПК ведущие фирмы-производители предлагают варианты объединения нескольких (на текущий момент – двух) видеоплат в одну видеосистему. Для фирмы nVIDIA – это технология SLI (Scalable Link Interface), а для фирмы ATi –технология CrossFire.
NVIDIA SLI. Интерфейс SLI (Scalable Link Interface - масштабируемый интерфейс соединения) определяет многопроцессорную графическую технологию, реализованную в последних продуктах фирмы nVIDIA. Использование SLI позволяет повысить производительность 3D-приложений за счет объединения двух графических ускорителей. На данный момент технология реализована для семейств GeForce 6600/6800 использующих интерфейс PCI Express x16. Для объединения плат используется мостовая схема (симметричное или изотропное подключение). Похожая технология использовалась в графических ускорителях Voodoo 2 фирмы 3Dfx, которая была приобретена фирмой nVIDIA. У фирмы 3Dfx эта технология носила название Scan Line Interface, так как распараллеливание вычислений в видеосистеме осуществлялось за счет обработки нечетных строк экрана на одной видеоплате, а четных – на другой. У фирмы nVIDIA использует мостовое соединение видеоплат и распараллеливание осуществляется по другому принципу: одна плата обрабатывает верхнюю часть экрана, а другая – нижнюю. При этом граница разделения экрана может изменяться в зависимости от содержимого экрана таким образом, чтобы равномерно загрузить обе платы (динамическая регулировка нагрузки). Технология nVIDIA SLI позволяет увеличить производительность видеосистемы до 200%.
ATi CrossFire. Основная цель технологии CrossFire (Перекрестный Огонь) — организация совместной работы двух графических ускорителей над построением изображения. Причем, архитектура должна быть не только эффективной (высокий КПД, низкая стоимость дополнительных схем и т.п.), но и удобной в использовании (совместимость с уже существующими программами и даже с уже существующими аппаратными решениями, прозрачность, простота и надежность). Несколько ускорителей (в варианте для пользователей ПК их два) формируют собственную часть изображения, и выводят её через трансмиттеры в общепринятом цифровом стандарте DVI. Затем информация попадает в «черный» ящик под названием Composing Engine, устройство, которое собственно и осуществляет совмещение результатов работы ускорителей для получения финального изображения. На выходе из этого ящика — вновь стандартный цифровой DVI сигнал, но на этот раз — уже окончательного кадра, собранного из двух порций данных, рассчитанных обоими VPU.
Для устранения проблем с синхронизацией, Composing Engine содержит собственную буферную память, что позволяет этому устройству накапливать данные асинхронно, и, затем, по мере готовности обоих ускорителей, формировать и выдавать результирующий кадр. Таким образом, четкая синхронизация работы VPU (Vertex Processing Unit) не требуется, достаточно двух фактов — каждый VPU должен знать, какую часть данных ему надо рассчитать, и каждый VPU должен закончить передачу рассчитанных данных в Composing Engine. После этого будет осуществлена передача кадра на устройство вывода в формате DVI или (если нам нужен аналоговый сигнал) на внешний графический DAC, преобразующий цифровой DVI поток в стандартный аналоговый VGA сигнал.
В настоящее время можно выделить три основных алгоритма, применяемых для распределения данных между потоками в различных потребительских и профессиональных видеосистемах.
Разделение экрана на несколько непересекающихся зон (Scissor, или Slicing). Это решение используется в современной технологии nVIDIA SLI, и во многих специальных решениях, таких как имитаторы для обучения пилотов (несколько окон панорамного вида, моделирование самолета), большие информационные мультиэкраны и т.д. Для двух VPU будет происходить вертикальное разделение кадра на две зоны. Интересно, что граница зон не обязательно должна проходить по середине кадра и может выбираться динамически, исходя из сложности той или иной части изображения. Задача подобной динамической балансировки нетривиальна, и требует анализа сцены. Этот метод хорош для сбалансированных по критерию «геометрические вычисления - закраска» приложений, так как в идеале (при правильном адаптивном делении кадра на зоны ответственности), позволит им поровну распределить и геометрическую и пиксельную нагрузку по двум ускорителям.
Построчное, шахматное (или иное) чередование рассчитываемых пикселей (Tiling) — самый удобный и прозрачный, с точки зрения организации, метод, когда ускорители рассчитывают соседние строчки (SLI от 3Dfx, где чередовались четные и нечетные строки) или пиксели в шахматном порядке, или соседние отсчеты для сглаживания в рамках одного результирующего пикселя. Таким образом, нагрузка по закраске делится строго поровну, вне зависимости от конкретной сцены, а вот геометрическую нагрузку VPU приходится дублировать — оба ускорителя рассчитывают одни и те же геометрические данные. Получается, что в случае приложений, не упирающихся в геометрическую производительность ускорителя (а это практически все игровые приложения), этот метод может обеспечить серьезный прирост скорости закраски, вплоть до двукратного (если запас простаивающей геометрической производительности двукратный). Таким образом, мы распараллеливаем пиксельную работу поровну, имея близкий к 100% КПД, без каких-либо видимых проблем совместимости или сложностей в организации балансировки и разделения потока данных. Метод требует минимальных вмешательств в драйверы, прозрачен для приложений и выглядит наиболее оптимальным для игрового пользовательского рынка. Особенно, учитывая все большее число приложений с тяжелой пиксельной нагрузкой и шейдерными спецэффектами. Более того, по ходу дела, этот метод может быть использован для эффективного FSAA, основанного на усреднении отсчетов, рассчитанных разными ускорителями. Что в дополнение к MSAA, реализованному в каждом VPU, даст нам еще и суперсэмплинг (SSAA), способный решить некоторые проблемы не достаточно эффективно устраняемые MSAA.
Чередование рассчитываемых кадров (Alternate Frame Rendering) — методика хороша для приложений, упирающихся в геометрическую производительность ускорителя и не критичных к плавности смены кадров (что редко встречается в игровых приложениях), но будет весьма эффективна в приложениях DCC/CAD/CAM/CAE (например, при интерактивном редактировании моделей в приложениях для создания реалистичной трехмерной графики).
Конец 84 вопроса.