*hDC = GetDC (hWnd); - функция GetDC извлекает дескриптор контекста дисплея для клиентской области указанного окна. Контекст дисплея может быть использован в последующих функциях GDI для рисования в клиентской области окна.(GL_COLOR_MATERIAL); - GL_COLOR_MATERIAL - разрешает использовать цвета при включенном источнике света..cRedBits = 8; - определяет число красных bitplanes в каждом цветном буфере RGBA..cRedShift = 16; - определяет что сдвиг имеет значение красные bitplanes в каждом цветном буфере RGBA..cGreenBits = 8;- определяет число зеленный bitplanes в каждом цветном буфере RGBA..cGreenShift = 8;- определяет что сдвиг имеет значение зеленный bitplanes в каждом цветном буфере RGBA..cBlueBits = 8;- определяет число голубой bitplanes в каждом цветном буфере RGBA..cBlueShift = 0;- определяет что сдвиг имеет значение голубой bitplanes в каждом цветном буфере RGBA..cAlphaBits = 0; - определяет номер альфы bitplanes в каждом цветном буфере RGBA. Альфа bitplanes не поддерживана..cAccumBits = 64; - определяет общее число bitplanes в буфере накопления..cAccumRedBits = 16; - определяет число красных bitplanes в буфере накопления..cAccumGreenBits = 16; - определяет число зеленный bitplanes в буфере накопления..cAccumBlueBits = 16; - определяет число голубой bitplanes в буфере накопления..cAccumAlphaBits = 0; - определяет номер альфы bitplanes в буфере накопления.(GL_DEPTH_TEST);//устанавливает режим проверки глубины пикселей
) Disable OpenGLDisableOpenGL (HWND hWnd, HDC hDC, HGLRC hRC)//выкл использования
{(NULL, NULL);(hRC);(hWnd, hDC);
}(NULL, NULL); - функция wglMakeCurrent делает определенный OpenGL,
предоставляющее контекст вызов резьбы текущего предоставления контекста.(hRC);
- функция wglDeleteContext удаляет определенный OpenGL, предоставляющее
контекст.(hWnd, hDC); - функция ReleaseDC освобождает контекст устройства (DC)
для использования другими приложениями.
5 .ПРИМЕРЫ ЭКРАННЫХ ФОРМ
При запуске программы видим главное окно программы. Пример экранной формы
приведён на рисунке 2.
Рисунок 2 - готовая программа
При выборе пункта меню «Figures
-Bishop» выбираем шахматную фигуру «Офицер».
Пример на рисунке 3.
Рисунок 3-шахматная фигура «Офицер»
При выборе пункта меню «Figures
-Rook» выбираем шахматную фигуру «Ладья».
Пример на рисунке 4.
Рисунок 4 - шахматная фигура «Ладья»
При выборе пункта меню «Figures
-King» выбираем шахматную фигуру «Король».
Пример на рисунке 5.
Рисунок 5 - шахматная фигура «Король»
При выборе пункта меню «Figures
-Queen» выбираем шахматную фигуру «Ферзь».
Пример на рисунке 6.
Рисунок 6 - шахматная фигура «Ферзь»
При выборе пункта меню «Textures -00.bmp» выбираем текстуру шахматной фигуры
. Пример на рисунке 7.
Рисунок 7- текстура «00.bmp»
При выборе пункта меню «Textures -08.bmp» выбираем металлическую текстуру
шахматной фигуры . Пример на рисунке 8.
Рисунок 8 - текстура «08.bmp»
ЗАКЛЮЧЕНИЕ
В данной курсовой работе я ознакомился с основами проектирования 3D моделей реального мира в программном продукте Dev C++ а так же освоил программирование с использованием OpenGL.
В заключение хотелось бы сказать что c точки зрения программиста, OpenGL - это программный
интерфейс для графических устройств (например, графических ускорителей). Он
включает в себя около 150 различных функций, с помощью которых программист
может задавать свойства различных трехмерных и двумерных объектов и выполнять
их визуализацию (рендеринг). Т.е. в программе надо задать местоположение
объектов в трехмерном пространстве, определить другие параметры (поворот,
растяжение, ...), задать свойства объектов (цвет, текстура, материал, ...),
положение наблюдателя, а затем библиотека OpenGL выполнит генерацию двумерной
проекции этой трехмерной сцены.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. А.А. Богуславский, С.М. Соколов Основы программирования на языке Си++ Часть II. Основы программирования трехмерной графики. - Коломна 2002. - 104 с.
2. Фленов М.Е. Искусство программирования игр на С++ / М.Е. Фленов - СПб.: БХВ, Петербург 2006. - 256 с.
. Фаппас К. Программирование на С и С++/ К. Фаппас, У. Мюррей.-Киев.: Издательская группа BHV, 2000.-320 с.
. Фореев В.Н. Компьютерная графика/ В.Н. Фореев. - СПб.: БХВ, 2002. - 432 с.