ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 09.06.2020
Просмотров: 1685
Скачиваний: 4
МОСКОВСКИЙ
ГОСУДАРСТВЕННЫЙ
УНИВЕРСИТЕТ
ИМЕНИ
М
.
В
.
ЛОМОНОСОВА
ФАКУЛЬТЕТ
ВЫЧИСЛИТЕЛЬНОЙ
МАТЕМАТИКИ
И
КИБЕРНЕТИКИ
ЛАБОРАТОРИЯ
КОМПЬЮТЕРНОЙ
ГРАФИКИ
И
МУЛЬТИМЕДИА
Ю
.
М
.
Баяковский
,
А
.
В
.
Игнатенко
,
А
.
И
.
Фролов
Г
РАФИЧЕСКАЯ
БИБЛИОТЕКА
O
PEN
GL
учебно
-
методическое
пособие
Москва
2003
УДК
681.3.07
ББК
32.973.26-018.2
Б
34
Баяковский
Ю
.
М
.,
Игнатенко
А
.
В
.,
Фролов
А
.
И
.
Графическая
библиотека
OpenGL
.
Учебно
-
методическое
пособие
.
Методическое
пособие
представляет
собой
практическое
руководство
по
работе
с
графической
библиотекой
OpenGL.
Оно
включает
описание
базовых
возможностей
OpenGL
и
приемы
работы
с
библиотекой
.
Рассматриваются
вопросы
оптимизации
приложений
.
Пособие
рассчитано
на
читателей
,
знакомых
с
языками
программирования
С
/C++
и
имеющих
представление
о
базовых
алгоритмах
компьютерной
графики
.
Рекомендуется
студентам
,
аспирантам
,
научным
сотрудникам
.
Рецензенты
:
Шикин
Е
.
В
.,
профессор
,
д
.
ф
.-
м
.
н
.
Крылов
А
.
С
.,
к
.
ф
.-
м
.
н
.
Издательский
отдел
факультета
Вычислительной
Математики
и
Кибернетики
МГУ
им
.
Ломоносова
(
лицензия
НД
№
05899
от
24.09.2001), 2003
г
. – 132
с
.
Печатается
по
решению
Редакционно
-
Издательского
Совета
факультета
Вычислительной
Математики
и
Кибернетики
Московского
Государственного
Университета
им
.
М
.
В
.
Ломоносова
.
ISBN 5-89407-153-4
©
©
Факультет
Вычислительной
Математики
и
Кибернетики
МГУ
им
.
Ломоносова
, 2003
Лаборатория
Компьютерной
Графики
и
Мультимедиа
, 2003
3
Содержание
Предисловие
..................................................................................................6
Введение
.........................................................................................................8
Глава
1
Основы
OpenGL ............................................................................10
1.1.
Основные
возможности
............................................................10
1.2.
Интерфейс
OpenGL...................................................................11
1.3.
Архитектура
OpenGL ...............................................................12
1.4.
Синтаксис
команд
.....................................................................14
1.5.
Пример
приложения
.................................................................15
Контрольные
вопросы
: ........................................................................19
Глава
2
Рисование
геометрических
объектов
.......................................20
2.1.
Процесс
обновления
изображения
.........................................20
2.2.
Вершины
и
примитивы
............................................................21
2.3.
Операторные
скобки
glBegin / glEnd......................................23
2.4.
Дисплейные
списки
...................................................................28
2.5.
Массивы
вершин
.......................................................................29
Контрольные
вопросы
.........................................................................31
Глава
3
Преобразования
объектов
..........................................................32
3.1.
Работа
с
матрицами
..................................................................32
3.2.
Модельно
-
видовые
преобразования
......................................35
3.3.
Проекции
.....................................................................................36
3.4.
Область
вывода
.........................................................................38
Контрольные
вопросы
.........................................................................39
Глава
4
Материалы
и
освещение
............................................................40
4.1.
Модель
освещения
....................................................................40
4
4.2.
Спецификация
материалов
.....................................................41
4.3.
Описание
источников
света
....................................................43
4.4.
Создание
эффекта
тумана
........................................................46
Контрольные
вопросы
.........................................................................48
Глава
5
Текстурирование
..........................................................................49
5.1.
Подготовка
текстуры
................................................................49
5.2.
Наложение
текстуры
на
объекты
...........................................52
5.3.
Текстурные
координаты
..........................................................55
Контрольные
вопросы
.........................................................................57
Глава
6
Операции
с
пикселями
................................................................58
6.1.
Смешивание
изображений
.
Прозрачность
...........................59
6.2.
Буфер
-
накопитель
.....................................................................61
6.3.
Буфер
маски
...............................................................................62
6.4.
Управление
растеризацией
......................................................64
Контрольные
вопросы
.........................................................................65
Глава
7
Приемы
работы
с
OpenGL .........................................................66
7.1.
Устранение
ступенчатости
......................................................66
7.2.
Построение
теней
.......................................................................67
7.3.
Зеркальные
отражения
............................................................72
Контрольные
вопросы
.........................................................................75
Глава
8
Оптимизация
программ
.............................................................76
8.1.
Организация
приложения
.......................................................76
8.2.
Оптимизация
вызовов
OpenGL..............................................80
Контрольные
вопросы
.........................................................................88
Приложение
A.
Структура
GLUT-
приложения
..................................89
Приложение
B.
Примитивы
библиотек
GLU
и
GLUT........................93
Приложение
C.
Настройка
приложений
OpenGL ...............................97
5
C.1.
Создание
приложения
в
среде
Borland C++ 5.02..................97
C.2.
Создание
приложения
в
среде
MS Visual C++ 6.0 ................98
C.3.
Создание
приложения
в
среде
Borland C++ Builder 6. ........99
Приложение
D.
Демонстрационные
программы
...............................100
D.1.
Пример
1:
Простое
GLUT-
приложение
...............................100
D.2.
Пример
2:
Модель
освещения
OpenGL..............................103
D.3.
Загрузка
BMP
файла
...............................................................106
D.4.
Пример
3:
Текстурирование
..................................................111
Приложение
E.
Примеры
практических
заданий
..............................118
E.1.
Cornell Box ................................................................................118
E.2.
Виртуальные
часы
..................................................................120
E.3.
Интерактивный
ландшафт
....................................................121
Литература
..............................................................................................127
Предметный
указатель
..........................................................................128