1. Теоретическая часть 1.1 Подключение графической библиотеки OpenGL к интерфейсу Windows Стандарт реализации OpenGL для Windows требует выполнения некоторых настроек, связанных с особенностями операционной системы. Для того чтобы оконная система могла работать с OpenGL, необходимо провести ее инициализацию и сконфигурировать буфер фрейма. Система OpenGL, как и любое другое приложение Windows, нуждается в ссылке на окно, на котором будет осуществляться воспроизведение. Ссылка на контекст воспроизведения – величина типа HGLRC (Handle to OpenGL Rendering Context) – связывает OpenGL с оконными системами Windows. Для получения этого контекста OpenGL нуждается в величине типа HDC (контекст устройства) окна, на который будет осуществляться вывод. Таким образом, чтобы начать работать с командами OpenGL, приложение должно создать один или несколько контекстов воспроизведения для потока, и сделать текущим один из них. Каждый поток при этом может иметь один и только один текущий контекст воспроизведения, который ассоциирован с определённым контекстом устройства. Прежде чем получить контекст воспроизведения, сервер OpenGL должен получить детальные характеристики используемого оборудования. Эти характеристики хранятся в специальной структуре, тип которой TPixelFormatDescriptor (описание формата пикселей). Формат пикселей определяет число бит на пиксел, конфигурацию буфера цвета и вспомогательных буферов используемых для вывода изображения. Для установки формата пикселей необходимо написать соответствующую процедуру, типичный пример которой приведён в приложении 2. Для работы с контекстом воспроизведения в Win32 API реализованы следующие функции. wglCreateContext(dc); Функция создаёт контекст воспроизведения OpenGL, который подходит для рисования на устройстве, определённом дескриптором dc. При успешном завершении функция возвращает дескриптор созданного контекста воспроизведения OpenGL, и NULL – в случае неудачи. Текущий контекст воспроизведения потока должен быть единственным. Следующая функция позволяет определить контекст воспроизведения для контекста устройства. wglMakeCurrent (dc, hrc); При завершении работы, необходимо, чтобы контекст никем не использовался. Для этого достаточно выполнить вызов функции: wglMakeCurrent (0,0); Завершая работу с OpenGL необходимо удалить контекст воспроизведения. Для этой цели используется функция: wglDeleteContext(hrc); После того как удалён контекст воспроизведения, следует удалить и ассоциированный с ним контекст устройства. Структуру приложения, использующего OpenGL, можно изобразить в виде схемы (рис. 1) 1.2 Синтаксис команд OpenGL Для того чтобы команды OpenGL были доступны в проекте, необходимо указать библиотеку в списке используемых модулей. Все команды начинаются с префикса gl, затем идёт имя команды, цифра и суффикс. Цифра в окончании соответствует количеству аргументов, буква показывает требуемый тип аргумента. Если имя команды заканчивается на v (векторная форма), то аргументом её служит указатель на массив значений. Например: Если последние три символа в имени команды 3fv , то её аргумент – адрес массива трёх вещественных чисел. В общем виде команду можно представить: glCommandName {1,2,3,4} {b, s, i, f, d, ub, us, ui} {v} (arguments)
Рефераты по информатике1. Теоретическая часть 1.1 Подключение графической библиотеки OpenGL к интерфейсу Windows Стандарт реализации OpenGL для Windows требует выполнения
Оценок: 458 (Средняя 5 из 5)
Специалисты RetsCorp работают в digital-сфере более 7 лет. За это время мы разработали более 500+ успешных проектов. Основываясь на своем опыте и знании рынка, мы с уверенностью можем сказать, что будет работать, а что — нет. Заказывая создание лендинга для бизнеса в нашей студии, вы получаете работающие решения, необходимые именно вашему бизнесу.
Сотрудничая с нами, вы будете не клиентом, а нашим партнером. Благодаря этому мы будем развивать ваш бизнес как собственный. Мы так же как и вы заинтересованы в успехе проекта, поскольку ваша успешность будет нашей рекламой.