openGL

программирование OpenGL

пытаюсь компилировать готовый код. Но пишет что в системе нету библиотеки glut32.dll. VS2008 язык C++
хотя я же ее подключаю, что не так?? Я новичок.

#pragma comment(lib, "C:\\Users\\hoope\\Documents\\Visual Studio 2008\\Projects\\LIBs\\glut32.lib")
#include "C:\\Users\\hoope\\Documents\\Visual Studio 2008\\Projects\\LIBs\\glut.h"

void Init()
{
glClearColor(0.3, 0.3, 0.3, 0);
glShadeModel(GL_FLAT);
}

void DisplayFunc()
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

//оси
glLineWidth(3);
glColor3ub(255, 255, 50);

glBegin(GL_LINES);
glVertex2d(0,0);
glVertex2d(0,300);

glVertex2d(0,0);
glVertex2d(300, 0);
glEnd();

//шкала
glLineWidth(2);
glColor3f(0.0, 0.0, 0.0);

glBegin(GL_LINES);
for(int i = 10; i <= 300; i+=10)
{
glVertex2d(i, 5);
glVertex2d(i, -5);

glVertex2d(5, i);
glVertex2d(-5, i);
}
glEnd();

//Фигура
glColor3ub(0, 255, 0);

glBegin(GL_QUADS);
glVertex2d(10,10);
glVertex2d(10,200);
glVertex2d(200,200);
glVertex2d(200, 10);
glEnd();

glColor3f(1.0, 0.5, 0.17);

glLineWidth(3);

glBegin(GL_LINE_LOOP);
glVertex2d(10,10);
glVertex2d(10,200);
glVertex2d(200,200);
glVertex2d(200, 10);
glEnd();

//SwapBuffers(wglGetCurrentDC());
glFlush();
}

void ReshapeFunc(int w, int h)
{
glViewport(0,0, (GLsizei) w, (GLsizei) h);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(-100.0, 400.0, -100.0, 400.0, 1.0, -1.0);
}

int main(int argc, char **argv)
{

glutInit(&argc, argv);
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
glutInitWindowSize(500,500);
glutInitWindowPosition(100,100);
glutCreateWindow("Hello OpenGL");

Init();

glutDisplayFunc(DisplayFunc);
glutReshapeFunc(ReshapeFunc);

glutMainLoop();
return 0;
}

Примечание:
adasiko все равно не работает. Может где то что то нужно прописывать в VS

Примечание:
Огромное всем спасибо разобрался.

Вот как решил проблему: заходим сюда http://www.cyberforum.ru/cpp-beginners/thread242879.html
второй пост(пользователь asics) пишет 4 пункта. Я выполнил только первый и второй.

все из include вставляете в папку C:\Program Files\Microsoft SDKs\Windows\v5.0\Include
все из lib вставляем в папку C:\Program Files\Microsoft SDKs\Windows\v5.0\Lib\IA64
все из dll вставляем в папку C:\Windows\System32

Если у вас windows 7 и пишет что не достаточно прав при копировании dll то просто берем отдельно по одно dll и копируем. По одной штуке это важно!!!(Я не знаю почему но windows не ругается если скидывать по одной)

В нашем cpp файле убираем все #include, вместо них пишем только один #include <gl\glut.h>

У меня все работает. Всем удачи!
Ответы:
Дело в том что OpenGL не майковскяа технология и в ней больше проблем при использовании в студии, попробуй делать на OpenGL в Qt Creator.
закинь glut32.dll в system32


13 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.