Бібліотеки, що відносяться до OpenGL



Бібліотека OpenGL

Бібліотека OpenGL надає потужний, але примітивний набір команд візуалізації, і усі зображення більш високого рівня мають бути створені з використанням саме цих команд. Окрім цього OpenGL-програми повинні використовувати основні механізми системи управління вікнами. Існує декілька бібліотек, які дозволяють спростити рішення ваших завдань в області програмування. До числа цих бібліотек входять наступні:

Бібліотека утиліт OpenGL (GLU - OpenGL Utility Library) містить декілька підпрограм, які використовують OpenGL-команди низького рівня для виконання таких завдання, як установка матриць для певного орієнтування і проектування перегляду, виконання тесселяції багатокутників(розбиття довільного багатокутника на опуклі багатокутники) і візуалізацію поверхні. Ця бібліотека надається в якості складової частини кожної реалізації бібліотеки OpenGL. Складові частини біблиотеки GLU описуються в Довіднику по OpenGL {OpenGL Reference Manual).

Для кожної віконної системи існує бібліотека, яка розширює функціональні можливості цієї віконної системи, щоб забезпечити підтримку візуалізації OpenGL. Для обчислювальних машин, які використовують оболонку X Window System, в якості доповнення до бібліотеки OpenGL надається розширення бібліотеки OpenGL для оболонки X Window System(GLX - OpenGL Extension to the X Window System). Підпрограми GLX використовують префікс glX. Для операційних систем Microsoft Windows 95/98/NT інтерфейс операційної системи Windows до бібліотеки OpenGL забезпечується підпрограмами бібліотеки WGL. Усі підпрограми WGL використовують префікс wgl.

Для операційної системи OS/2 корпорації IBM використовуються PGL-інтерфейс адміністратора представлень (Presentation Manager) до бібліотеки OpenGL, і його підпрограми використовують префікс pgl. Для комп'ютерів фірми Apple інтерфейсом для графічних систем, що підтримують бібліотеку OpenGL, являється AGL, і підпрограми AGL використовують префікс agl.

Інструментарій утиліт бібліотеки OpenGL (GLUT - Graphics Library UtilityToolkit) є незалежним від віконної системи інструментарієм, написаним Марком Килгардом (Mark Kilgard) для того, щоб приховати складність програмного інтерфейсу прикладних програм (API - ApplicationProgramming Interface) різних віконних систем. Підпрограми GLUT використовують префікс glut.

FSG (Fahrenheit Scene Graph) є об'єктно-орієнтованим набором інструментальних засобів, заснованим на бібліотеці OpenGL і надаючим об'єкти і методи для створення інтерактивних тривимірних графічних прикладних програм. FSG написаний на мові програмування C++, містить заздалегідь підготовлені об'єкти і вбудовану модель обробки подій при взаємодії з користувачем, компоненти прикладних програм високого рівня для створення і редагування тривимірних сцен і можливості для обміну даними в інших графічних форматах. FSG не залежний від OpenGL.

 

Файли, що підключаються

Для усіх OpenGL-програм ви можете підключити заголовний файл gl.h в кожен файл проекту. Майже усі OpenGL-програми використовують GLU, вищезгадану Бібліотеку утиліт OpenGL, яка вимагає включення заголовного файлу glu.h. Отже майже кожен початковий файл OpenGL-програми починається з наступних рядків:

#include <gi/gl.h>

#include <gl/glu.h>

Операційна система Microsoft Windows вимагає, щоб заголовний файл windows.h був включений до підключення заголовних файлів gl.h або glu.h, оскільки деякі макрокоманди, визначені в Microsoft Windows, версіях заголовних файлів gl.h і glu.h, визначаються в заголовному файлі windows.h.

Якщо ви звертаєтеся безпосередньо до бібліотеки віконного інтерфейсу, яка забезпечує підтримку OpenGL, наприклад, до бібліотеки GLX, AGL, PGL або WGL, то необхідно включити додаткові заголовні файли. Наприклад, якщо ви викликаєте бібліотеку GLX, то, можливо, потрібно буде додати до вашого програмного коду рядки, приведені нижче :

#include <X11/Xlib.h>

#include <GL/glx.h>

У операційній системі Microsoft Windows для підключення підпрограм WGL слід додати до вашого програмного коду наступний рядок:

#include <windows.h>

(і рядок

#include <GL/glaux.h>

якщо вам потрібні розширені можливості OpenGL).

Якщо ви використовуєте бібліотеку GLUT для управління завданнями віконного менеджера, то необхідно буде включити наступний рядок:

#include <GL/glut.h>

Більшість OpenGL-програм також використовують системні виклики для стандартної бібліотеки мови програмування С, тому зазвичай слід включати заголовні файли, не пов'язані з обробкою графіки, такі як:

#include <stdlib.h>

#include <stdio.h>


Дата добавления: 2019-07-15; просмотров: 160; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!