Установка OpenGL/избытка и выполнение C программа?

Я плохо знаком с OpenGL и ИЗБЫТКОМ и нуждаюсь в помощи, устанавливая их и работая hello.c (см. ниже) в Visual C++ 2010 Express Edition.

Я использую Windows XP и читал на Wiki OpenGL, что Библиотека OpenGL уже установлена на моем компьютере. В результате я только загрузил ИЗБЫТОК для Win32 dll, библиотечного и заголовочного файла и извлек его.

У меня есть 4 вопроса:

  1. Если OpenGL уже установлен, как я нахожу его и использую его в моем проекте Visual C++?
  2. Wiki OpenGL упомянула, что opengl32.dll расположен в windows/system32 папке - поэтому, что я делаю с этим dll?
  3. Я просто добавляю glut.h к папке заголовочных файлов Проводника Решения для Visual C++?
  4. Куда я помещаю glut32.dll, glut32.lib и glut.def?

Любая помощь будет значительно цениться.Заранее спасибо.

hello.c был взят из Главы 1 Руководства по программированию OpenGL

// hello.c renders a white rectangle on a black background
#include 
#include 

void display(void)
{
    // clear all pixels
    glClear(GL_COLOR_BUFFER_BIT);

    //  draw white polygon with corners at (0.25,0.25,0.0) and (0.75,0.75,0.0)    
    glColor3f(1.0,1.0,1.0);
    glBegin(GL_POLYGON);
        glVertex3f(0.25,0.25,0.0);
        glVertex3f(0.75,0.25,0.0);
        glVertex3f(0.75,0.75,0.0);
        glVertex3f(0.25,0.75,0.0);
    glEnd();   

    // don't wait, start processing buffered OpenGL routines
    glFlush();
}

void init(void)
{
    // select clearing (background) color   
    glClearColor(0.0, 0.0, 0.0, 0.0);

    // initialize viewing values
    glMatrixMode(GL_PROJECTION);
    glLoadIdentity();
    glOrtho(0.0,1.0,0.0,1.0,-1.0,1.0);
}

/*
    Declare initial window size, position, and display mode
    (single buffer and RGBA). Open window with "hello"
    in its title bar. Call initiaization routines. 
    Register callback function to display graphics.
    Enter main loop and process events

*/

int main(int argc, char** argv)
{
    glutInit(&argc, argv);
    glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
    glutInitWindowSize(250,250);
    glutInitWindowPosition(100,100);
    glutreateWindow("Hello");
    init();
    glutDisplayFunc(display);
    glutMainLoop();
    return 0; // ISO C requires main to return int   
}

1
задан Anthony 8 July 2010 в 00:51
поделиться

1 ответ

Повторяющийся вопрос, см. Использование GLUT с Visual C ++ Express Edition .

Кроме того: я определенно рассмотрел бы возможность использования Simple DirectMedia Layer ( http://www.libsdl.org/) как более современную и часто обновляемую замену почтенному GLUT.

2
ответ дан 2 September 2019 в 23:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: