- •Компьютерная Графика (кг)
- •3 Уровня подобия
- •4Возможности:
- •8. Основные возможности. Дополнительные библиотеки.
- •9.OpenGl в Windows. Контексты и их связь. Формат пикселя.
- •10.Архитектура и синтаксис команд.
- •11.Рисование в OpenGl. Буфер. Обновление изображения.
- •12. Вершины, примитивы, и их атрибуты.
- •13.Дисплейные списки
- •14.Работа с матрицами. Модельно-Видовые преобразования
- •15.Проецкции
- •16.Модель освещения и спецификация материалов
- •17.Описание источников света
- •18.Создание эффекта тумана
- •19.Текстуры. Подготовка текстуры.
- •20.Наложение текстуры на объект.
- •21. Текстурные координаты.
- •22.Смешивание изображений (blending). Прозрачность.
- •23.Буфер-накопитель.
- •24.Буфер трафарета(маски).
- •25.Управление растеризацией [glhint].
- •28. Структура видеоадаптера и назначение его составных частей.(км)
- •30. Аппаратные ускорители графики. 3d-конвейер.
- •31. Аппаратная структура ускорителя. Ускорители будущего.
- •32. Представление пространственных форм. Полигональные сетки.(км)
- •33. Формы задания: явная, указатели в список вершин, явное задание ребер
- •34. Параметрические кубические кривые.(км)
- •35. Форма Эрмита
- •37. Параметрические кубические поверхности Форма Эрмита.
- •38. Методы создания реалистических изображений
- •39. Удаление скрытых линий (hsr). Тезисы
- •40. Hsr: алгоритм сортировки по глубине
- •41.Hsr: алгоритм z-буфера. (км)
- •42.Hsr для криволинейных поверхностей
- •43.Физическая модель света
- •44. Свет. Свойства света ( простейшие законы). (км)
- •45.Диффузное отражение и рассеянный свет.
- •46.Свет. Зеркальное отражение.
- •47. Закраска полигональной сетки. Полосы Маха. (км)
- •48. Метод закраски Гуро (интерполяция интенсивности). Преимущества и недостатки
- •49. Метод закраски Фонга (интерполяция нормалей). Преимущества и недостатки
- •50. Тени
- •51.Текстурирование. Point sampling. Mip-mapping.
- •52.Билинейная, трилинейная и анизотропная фильтрации текстур.
- •53 Цвет в кг. Ахроматический цвет. Интенсивность.
- •55. Цветовые модели rgb, cmyk, yCbCr, hsv.
- •56. Форматы графических файлов: точечная графика, сравнение с векторной.
- •57.Форматы: bmp, gif, jpeg, tiff, raw, eps.
- •58.Сжатие графических файлов.
- •59. Будущее графических файлов.Текущее положение.Модель зрения.Динамический диапазон.Сопоставление.
- •60.Hrdi. Форматы файлов.Области применения.
- •61. Шрифты. История.Графические характеристики.Графема.
- •62. Классификация шрифтов.Система измерений. Оптические компенсации.
- •63. Язык PostScript.
- •64. Растрирование в PostScript. Программные и аппаратные rip.
- •65. Растровые и векторные шрифты.
- •66. Контурные шрифты.
- •67. Шрифты в Windows.Файлы шрифтов.
- •68. Понятие о формате и шрифтовой машине.
- •69. Кодирование шрифтов. Ascii. Стандарт Unicode.
- •72. Лазерные принтеры.
4Возможности:
1) GDI
2) Direct Draw
3) Direct 3D
4) Open GL
OpenGL:
8. Основные возможности. Дополнительные библиотеки.
Описывать возможности OpenGL мы будем через функции его библиотеки. Все функции можно разделить на пять категорий:
Функции описания примитивов определяют объекты нижнего уровня иерархии (примитивы), которые способна отображать графическая подсистема. В OpenGL в качестве примитивов выступают точки, линии, многоугольники и т.д.
Функции описания источников света служат для описания положения и параметров источников света, расположенных в трехмерной сцене.
Функции задания атрибутов. С помощью задания атрибутов программист определяет, как будут выглядеть на экране отображаемые объекты. Другими словами, если с помощью примитивов определяется, что появится на экране, то атрибуты определяют способ вывода на экран. В качестве атрибутов OpenGL позволяет задавать цвет, характеристики материала, текстуры, параметры освещения.
Функции визуализации позволяет задать положение наблюдателя в виртуальном пространстве, параметры объектива камеры. Зная эти параметры, система сможет не только правильно построить изображение, но и отсечь объекты, оказавшиеся вне поля зрения.
Набор функций геометрических преобразований позволяют программисту выполнять различные преобразования объектов – поворот, перенос, масштабирование.
При этом OpenGL может выполнять дополнительные операции, такие как использование сплайнов для построения линий и поверхностей, удаление невидимых фрагментов изображений, работа с изображениями на уровне пикселей и т.д.
Дополнительные библиотеки
OpenGL состоит из набора библиотек. Все базовые функции хранятся в основной библиотеке, для обозначения которой в дальнейшем мы будем использовать аббревиатуру GL. Помимо основной, OpenGL включает в себя несколько дополнительных библиотек.
Первая из них – библиотека утилит GL(GLU – GL Utility). Все функции этой библиотеки определены через базовые функции GL. В состав GLU вошла реализация более сложных функций, таких как набор популярных геометрических примитивов (куб, шар, цилиндр, диск), функции построения сплайнов, реализация дополнительных операций над матрицами и т.п.
OpenGL не включает в себя никаких специальных команд для работы с окнами или ввода информации от пользователя. Поэтому были созданы специальные переносимые библиотеки для обеспечения часто используемых функций взаимодействия с пользователем и для отображения информации с помощью оконной подсистемы. Наиболее популярной является библиотека GLUT (GL Utility Toolkit). Формально GLUT не входит в OpenGL, но de facto включается почти во все его дистрибутивы и имеет реализации для различных платформ. GLUT предоставляет только минимально необходимый набор функций для создания OpenGL-приложения. Функционально аналогичная библиотека GLX менее популярна.
9.OpenGl в Windows. Контексты и их связь. Формат пикселя.
Поток команд OpenGL –> контекст воспроизведения –> контекст устройства Windows -> рисование в окне.
Контекст устройства — это внутренняя структура, для управления информацией о выходном устройстве. Она содержит информацию о параметрах и атрибутах вывода графики на устройство (например, дисплей или принтер). Вместо направления вывода непосредственно на аппаратное устройство, приложение направляет его в контекст устройства, а затем Windows пересылает вывод в аппаратное устройство.
С контекстом воспроизведения тоже что и с контекстом устройства, только в пределах OpenGL, а не Windows.
Прежде чем получить контекст воспроизведения, сервер OpenGL должен получить детальные характеристики используемого оборудования. Эти характеристики хранятся в специальной структуре, тип которой - TPixelFormatDescriptor (описание формата пикселя). Формат пикселя определяет конфигурацию буфера цвета и вспомогательных буферов. Полям структуры присваиваются желаемые значения, затем вызовом функции ChoosePixelFormat осуществляется запрос системе, поддерживается ли на данном рабочем месте выбранный формат пиксела, и, наконец, вызовом функции SetPixelFormat устанавливается формат пиксела в контексте устройства.
