Инициализация OpenGL в Visual Studio 2010

Первым делом в VS создаем пустой проект. Я его назвал OpenglTest. Добавляем файл .cpp и даем название. У меня это main.cpp.

Далее нажимаем Open File и попадаем в папку с нашим проектом. Сюда ложим файл glut.h.

Теперь подымаемся на уровень выше, создаем папку libs и ложим туда glut32.dll и glut32.lib.

Щелкаем правой кнопкой по названию нашего проекта и выбираем Properties. Мы попали в свойства нашего проекта.

Вверху, где Configuration, в выпадающем списке выбираем  All Configurations. Теперь настройки будут одинаковыми как для Debug, так и для Release версии проекта.

Идем на вкладку Linker, выбираем General и в Additional Library Directories мы должны указать папку с нашими библиотеками. Для этого в выпадающем списке выбираем <Edit…> . Появится окошко и в этом окне щелкаем мышкой в первой строке. Указываем расположение папки libs. В нашем случае ../libs. Жмем ОК.

Теперь чуть ниже выбираем Input. В Additional Dependencies мы должны указать какие библиотеки будем использовать. В выпадающем списке выбираем <Edit…>.  Теперь в появившимся окне пишем glut32.lib и нажимаем OK. И теперь нажимаем OK окна свойства проекта. На этом наша подготовка закончена.

Теперь в main.cpp пишем следующий код.

#include "glut.h"

void display() 
{ 
	glClear(GL_COLOR_BUFFER_BIT); 
	glFlush();  
}

void main() 
{   
	glutInitWindowSize(500, 500);
	glutInitWindowPosition(100, 140);
	glutCreateWindow("OpenGL window");
	glClearColor(0, 0, 1, 1);    
	glutDisplayFunc(display);
	glutMainLoop(); 
}

Выбираем Build — Build Solution или просто нажимаем F7. Если вы сделали все правильно, ошибок быть не должно.

Дальше запускаем F5 и получаем ошибку. Нужно положить библиотеку glut32.dll в папку с exe файлом. В папку Debug ложим glut32.dll.

Теперь запускаем F5 и видим окно с синим фоном. Все работает. Теперь рассмотрим наш код.

Функция glutInitWindowSize(500, 500) устанавливаем размера окна (500 на 500 пикселей)

Функция glutInitWindowPosition(100, 140) задает позицию нашего окна на экране. Левый верхний угол нашего окна имеет координаты 100 по x и 140 по y.

Функция glutCreateWindow(«OpenGL window») создает окно с заголовком «OpenGL window»

Функция glClearColor(0, 0, 1, 1) устанавливает цвет фона в формате RGB. В данном случае синий. Последний параметр отвечает за прозрачность. Цвет изменяется в диапазоне [0;1].

Функция glutDisplayFunc(display) принимает указатель на функцию display и задает ее в качестве функции рисования.

Функция glutMainLoop() запускает цикл обработки сообщений.

Функция glClear(GL_COLOR_BUFFER_BIT) заливает фон цветом, который мы задали функцией glClearColor(). Константа GL_COLOR_BUFFER_BIT — очищает текущий буфер цвета.

Функция glFlush() выполняет немедленную отрисовку.

Вы можете оставить комментарий ниже.

Комментариев к записи: 4

  1. releyshic:

    Будет ли это работать на VS 2008?

  2. releyshic:

    «Сюда ложим файл glut.h.» — где его взять?

Оставить комментарий

Яндекс.Метрика