В этой статье я расскажу как установить графическую библиотеку glut, и покажу вам самый элементарный пример программы с его использование, пользуясь средой разработки "Microsoft Visual C++ Express 2010" Glut предназначен для создания/манипуляции окон, вывода графики.Так же glut прекрасно подходит для освоения OpenGL.
Загрузка и распаковка
Ну, что ж, приступим.Для начала скачаем Glut c сайта OpenGL.Выбираем версию под вашу операционную систему.В разделе "Other GLUT Information/Downloads".(*Под Windows cсылка называется Nate Robin's GLUT for Windows page*)Скачиваем архив.Вас перебрасывает на страницу с вариантам архивов. Выбираем glut-3.7.6-bin.zip (117 KB)(либо если есть, версию по новее) . В архиве мы видим:
glut.def
glut.h
glut32.dll
glut32.lib
README Извлекаем файлы в любую из папок.Из всех файлов glut.def и README можно удалить.
Процесс установки
1)Начнём с glut32.dll.Его мы должны перекинуть по этому адресу: C://Windows/System32 2)glut32.lib надо перекинуть по этому адресу: C://Program files/Microsoft Visual Studio/VC/lib 3)Для glut.h Мы создадим папку по адресу .../VC/include , назовём её GL.И в эту папку перекинем glut.h. (Таким же образом можно установить библиотеки gl.h и glu.h все файлы можно скачать по отдельности здесь) 4)Открываем Microsoft Visual C++.Создаём проект.(Win32->Консольное приложение(пустой проект)) 5)Правой кнопкой жмём на проект ->Cвойства->Открываем вкладку "Компоновщики".В "Дополнительных зависимостях"пишем: opengl32.lib glut32.lib glu32.lib Установка завершена!
Первая программа с glut
Перейдём к программе написанной с помощью glut. Для подключения заголовочного файла нам нужно написать:
Код
#include <GL/glut.h>
Продолжим:
Код
#include <GL/glut.h> int main(int argc, char **argv) { glutInit(&argc, argv); //Передаём параметры функции main glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB); /*Иницилизируем дисплей с одним буфером(GLUT_SINGLE) в фрмате RGB 24 битный цвет*/ glutInitWindowSize(700, 700); /*Устанавливаем размер окна(700 на 700 пикселей)*/ glutInitWindowPosition(100, 740); /*Расположение окна (x,y)*/ glutCreateWindow("First window!"); /*Команда для создания окна;Название окна*/ glClearColor(1.0, 1.0, 1.0, 1.0);/*Заполним экран белым фоном*/ glMatrixMode(GL_PROJECTION); /*Настроим 2-х мерный вид*/ glLoadIdentity(); glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0); /*Задаём в каких пределах изменяеются координаты x,y,z*/ glutDisplayFunc(display);/*Объявляем функции рисования, которую мы создадим позже*/ glutMainLoop(); /*Буквально это - функция, завершающая описание окна,переводящая нас в основной цикл*/ }
Теперь зададим функцию рисования.
Код
void display() { glClear(GL_COLOR_BUFFER_BIT); /*Функция очищения экрана*/ glBegin(GL_LINES);//начало рисования линий glColor3f(1.0, 0.0, 0.0); //цвет красный //Нарисуем квадрат glVertex2f(0.4, 0.4);//координаты начальной точки лини glVertex2f(0.4, 0.8);//координаты конечной точки линии // glVertex2f(0.4, 0.8);/*2f - означает что рисуем мы в 2-х мерном пространстве*/ glVertex2f(0.8, 0.8); // glVertex2f(0.8, 0.8); glVertex2f(0.8, 0.4); // glVertex2f(0.4, 0.4); glVertex2f(0.8, 0.4); glEnd(); glFlush(); /*Отрисовывает всё, что мы описали*/ }
Для удобства я советую нарисовать систему координат. Запускаем и наслаждаемся! Результат: Всем спасибо за внимание.Надеюсь моя статья поможет новичкам.
Также если вы считаете, что данный материал мог быть интересен и полезен кому-то из ваших друзей, то вы бы могли посоветовать его, отправив сообщение на e-mail друга:
Игровые объявления и предложения:
Если вас заинтересовал материал «С++.Подключение и опыт работы с библиотекой glut», и вы бы хотели прочесть что-то на эту же тему, то вы можете воспользоваться списком схожих материалов ниже. Данный список сформирован автоматически по тематическим меткам раздела.
Предлагаются такие схожие материалы:
Если вы ведёте свой блог, микроблог, либо участвуете в какой-то популярной социальной сети, то вы можете быстро поделиться данной заметкой со своими друзьями и посетителями.