gIMatrixMode ( GLJEXTURE );
gIRotatef (… );
gIMatrixMode ( GL_MODELVIEW );

Замечание. При выводе текстуры OpenGL может использовать линейную интерполяцию (аффинное текстурирование) (см. гл. 13) или же точно учитывать перспективное искажение. Для задания точного текстурирования служит команда glHint (GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST ); Если качество не играет большой роли, а нужна высокая скорость рендеринга, то в качестве последнего аргумента следует использовать константу GL_FASTEST.

12.11. Работа с OpenGL в Windows

OpenGL представляет собой универсальную графическую библиотеку, которая может быть реализована в любой оконной среде. Существует ее реализация и для Windows 95 и для Windows NT.

Для работы OpenGL в Windows используется понятие контекста воспроизведения (rendering context), который связывает OpenGL с оконной системой Windows. Если обычный контекст устройства (device context) содержит информацию, относящуюся к графическим компонентам GDI, то контекст воспроизведения содержит информацию, относящуюся к OpenGL.

Таким образом, чтобы начать работать с командами OpenGL, приложение должно создать как минимум один контекст воспроизведения и сделать его текущим.

Перед созданием контекста воспроизведения необходимо установить формат пикселов.

Для установки формата пикселов используется функция

int ChoosePixelFormat ( HDC, const PIXELFORMATDESCRIPTOR * );

выбирающая наиболее подходящий формат исходя из информации, переданной в полях структуры PIXELFORMATDESCRIPTOR.

Компьютерная графика. Полигональные модели о

JJL

После того как найден подходящий формат пикселов, нужно установить его в контексте устройства при помощи функции

BOOL SetPixelFormat ( HDC hDC, int pixelFormat, const PIXELFORMATDESCRIPTOR *);

Для работы с контекстом воспроизведения в Windows существуют функции HGLRC wglCreateContext ( HDC hDC ); и BOOL wglMakeCurrent ( HDC hDC, HGLRC hGLRC ); Первая из них создает новый контекст воспроизведения OpenGL, который подходит для рисования на устройстве, задаваемом контекстом hDC. Вторая функция устанавливает текущий контекст воспроизведения.


⇐ Предыдущая| |Следующая ⇒