Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
кг часть 2.doc
Скачиваний:
16
Добавлен:
27.04.2019
Размер:
447.49 Кб
Скачать

Графическая библиотека OpenGl

Это библиотека является универсальным стандартом, поддерживающийся многими ОС на различных аппаратных платформах. OpenGL позволяет достаточно просто создавать быстродействующие графические программы. Библиотека OpenGL поддерживается всеми ОС Windows, начиная с Windows95. Интерфейс OpenGL реализован в виде набора функций, которые можно использовать в прикладных программах. Разработка графических программ для среды Windows подобно программированию графики с использованием GDI-подсистемы.

Быстродействие графических программ, использующих OpenGL, существенно зависит от видеоадаптера. Аппаратная реализация всех базовых функций OpenGL—это основа высокого быстродействия. Кроме того видеоадаптеры должны включать в себя такие функции OpenGL как: преобразование координат, расчеты освещения, положение текстур, отсечение, выводы полигонов. Для достижения высокого быстродействия должны быть установлены специальные драйвера. Их 2 типа:

  1. ICD—драйвер этого типа обеспечивает интерфейс, способствующий эффективному использованию аппаратных возможностей видеоадаптера

  2. MCD—устанавливается в тех случаях, когда не все функции поддерживаются аппаратно. В этом случае они выполняются программно центральным процессором, что существенно замедляет процесс.

При использовании графики OpenGL необходимо сначала создать контекст отображения и направить текущий вид графики на него. Потом следует закрыть этот контекст и освободить от него память.

Структура программ для работы с OpenGl.

  1. создание окна программы, установка стиля окна

  2. открытие контекста отображения

  3. открытие контекста окна

  4. для выяснения контекста отображения устанавливаются соответствующие поля

  5. задается пиксельный формат в контексте

  6. создается контекст отображения

  7. производится прорисовка объектов

  8. перед закрытием окна необходимо закрыть все контексты отображения и контексты графического устройства