| Украина, Киев | 
Простая программа на OpenGL
Первая программа OpenGL
Файлы к лабораторной работе Вы можете скачать  здесь.
здесь.
Реализация библиотеки Microsoft OpenGL (Open Graphics Library) включает в себя следующие компоненты:
- Набор базовых команд (около 300) для описания форм объектов, преобразования координат, управления освещением, цветом, текстурой, туманом, вывода растровых картинок и т.д. Имена базовых команд в реализации на C начинаются с префикса gl
- Библиотеку утилит ( GLU - библиотеку). Команды этой библиотеки дополняют базовые функции OpenGL и позволяют выполнять триангуляцию многоугольников, создавать и выводить стандартные фигуры (сферы, цилиндры, ...), строить сплайновые кривые и поверхности, обрабатывать ошибки. Имена команд библиотеки утилит в реализации на C начинаются с префикса glu
- Дополнительную библиотеку OpenGL ( AUX - библиотеку). Библиотека содержит функции управления окнами, обработки событий, управления цветовой палитрой, вывода стандартных 3D -объектов (тор, тетраэдр, ...), управления двойной буферизацией. Имена команд этой библиотеки в реализации на C начинаются с префикса aux
- Функции, соединяющие OpenGL с Windows ( WGL - функции). Эти функции управляют контекстом воспроизведения, списками команд, шрифтами. Имена WGL - функций начинаются с префикса wgl
- Win32 - функции для управления форматов пикселов и двойной буферизацией. Они заменяют библиотеку AUX.
Создание заготовки приложения OpenGL
На этом этапе мы создадим простую программу с использованием графической библиотеки OpenGL. Для этого мы создадим консольное приложение на C++ и настроим его на вызов функций библиотеки OpenGL.
- 
 Выполните
    команду меню оболочки File/New/Project Выполните
    команду меню оболочки File/New/Project
- 
 В появившемся
    окне мастера создания заготовки проекта задайте имя проекта Simple, выберите каталог размещения проекта и другие установки,
    как показано на рисунке В появившемся
    окне мастера создания заготовки проекта задайте имя проекта Simple, выберите каталог размещения проекта и другие установки,
    как показано на рисунке
- 
 Переименуйте
    функцию _tmain()  файла Simple.cpp  в main(), уберите параметры
    в заголовке определения функции main()  и возвращаемое
    значение, чтобы код выглядел так Переименуйте
    функцию _tmain()  файла Simple.cpp  в main(), уберите параметры
    в заголовке определения функции main()  и возвращаемое
    значение, чтобы код выглядел так
// Simple.cpp : Defines the entry point for the console application.
//
  
#include "stdafx.h"
  
  
int main()
{
}
                            Листинг
                        19.1.
                      Начальная заготовка файла Simple.cpp     
Теперь необходимо сообщить линковщику о необходимости использования библиотечных файлов OpenGL (хотя это и не обязательно, поскольку далее мы используем вспомогательный заголовочный файл glut.h, где все это будет прописано). Для этого:
- 
 Выполните
    команду меню оболочки Project/Simple Properties  и
    в открывшемся диалоговом окне в поле Linker/Input/Additional
    Dependencies     введите разделенные пробелами наименования
    библиотек Выполните
    команду меню оболочки Project/Simple Properties  и
    в открывшемся диалоговом окне в поле Linker/Input/Additional
    Dependencies     введите разделенные пробелами наименования
    библиотек
opengl32.lib glu32.lib glaux.lib
| Необходимые подключемые файлы OpenGL 
 хранятся по адресу: C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\Include\gl | 
| Необходимые статические библиотеки OpenGL 
 хранятся в файловой системе компьютера по адресу: C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\Lib | 
| Необходимые динамические библиотеки OpenGL 
 хранятся в системном каталоге по адресу: C:\WINNT\system32 | 
Но нам понадобится дополнительно еще одна статическая библиотека glut32.lib и одна динамическая библиотека glut32.dll, а также один заголовочный файл glut.h - все они находятся в каталоге Source, прилагаемом к этой лабораторной работе!!!
- 
 Скопируйте
          из каталога Source  данной лабораторной
          работы файл glut32.lib  в
          каталог статических библиотек,  файл glut32.dll  в
          каталог динамических библиотек, а файл glut.h  -
          в каталог  размещения подключаемых файлов Вашего
          компьютера (примерные адреса размещения перечислены
          выше) Скопируйте
          из каталога Source  данной лабораторной
          работы файл glut32.lib  в
          каталог статических библиотек,  файл glut32.dll  в
          каталог динамических библиотек, а файл glut.h  -
          в каталог  размещения подключаемых файлов Вашего
          компьютера (примерные адреса размещения перечислены
          выше)
- 
 Через
    панель Solution Explorer  оболочки откройте файл stdafx.h,
    который создал мастер проекта, и добавьте в самое его начало после  инструкции #pragma once  код подключения стандартных заголовочных файлов Через
    панель Solution Explorer  оболочки откройте файл stdafx.h,
    который создал мастер проекта, и добавьте в самое его начало после  инструкции #pragma once  код подключения стандартных заголовочных файлов
// stdafx.h : include file for standard system include files, // or project specific include files that are used frequently, but // are changed infrequently // #pragma once #include <windows.h> #include <gl/gl.h> #include <gl/glu.h> #include <gl/glut.h> #define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers #include <stdio.h> #include <tchar.h> // TODO: reference additional headers your program requires hereЛистинг 19.6. Добавление стандартных заголовков в файл stdafx.h
 
                             




