Таблица 4.2 |
|
Значение |
Комментарий |
GLUT_RGBA |
Выбор режима ІЮВА |
GLUT_RGB |
То же, что и СШТ_РОВА |
GLUTJNDEX |
Палитровый видеорежим |
GLUT_SINGLE |
Использование одинарного видеобуфера |
GLUT_DOUBLE |
Использование двойной буферизации, применяется для создания анимации |
GLUT.ACCUM |
Создавать аккумулирующий буфер |
GLUT.ALPHA |
Создавать окно с а-каналом |
GLUT_DEPTH |
Создавать окно с буфером глубины |
GLUT_STENCIL |
Создавать окно с буфером трафарета |
После инициализации можно создать окно, в которое будет происходить вывод при помощи функции
int glutCreateWindow ( char * name );
Параметр name задает заголовок окна. Функция возвращает целочисленный идентификатор окна. Он может быть использован в функции glut-SetWindow.
После того как окно (или несколько окон) было создано, можно вызвать функцию
void glutMainLoop ();
которая запускает цикл обработки сообщений. После вызова этой функции управление назад j-же не возвращается. Поэтому если есть необходимость в какой-либо обработке поступающего ввода, то необходимо установить обработчики событий.
Основными событиями, явная обработка которых может Потребоваться, являются перерисовка содержимого окна, изменение размеров окна, иажа-тие-отпускание клавиш клавиатуры и мыши, перемещение мыши.
Для установки обработчика события, связанного с необходимостью перерисовки содержимого окна, используется функция
void glutDisplayFunc ( void (*func)() );
Параметр June задает функцию, которая будет вызываться для перерисовки содержимого окна.
Глави 4. Основы библиотеки OpenGL
Для установки обработчика события, связанного с изменением размера окна, служит функция
void glutReshapeFunc ( void (*func)(int width, int height) );
Параметр func задает функция, которая будет вызываться при изменении размеров окна перед вызовом функции отрисовки содержимого окна. В качестве параметров функция получает новые значения ширины и высоты окна в пикселах.
Для установки обработчика сообщений от клавиатуры служит функция
void glutKeyboardFunc (void (*func)(unsigned char key, int x, int y));
Параметр key содержит ASCII-код символа, а параметры хиу - координаты курсора мыши в пикселах по отношению в верхнему левому углу окна. Обработчики сообщений от мыши устанавливаются функцией