Как я смогу использовать GLU_RGBA или другие параметры GLU_? - PullRequest
1 голос
/ 25 марта 2011

эй, у меня есть еще один вопрос. Там не так много информации, но я заметил, что, хотя у меня есть связанный libglu32.a и включенный glu.h, я все еще не могу использовать GLU_ параметры

Мне интересно, как это не так. кто-нибудь есть идеи?

если какой-либо код необходим, прокомментируйте, и я быстро отвечу.

Кроме того, моя IDE - это CodeBlocks с MinGW в качестве компилятора в Windows 32-битной версии.

Ответы [ 3 ]

1 голос
/ 25 марта 2011

Похоже, вы путаете GLU с GLUT. Существует нет GLU_RGBA, но - это GLUT_RGBA, который передается при создании окна отображения.

1 голос
/ 25 марта 2011

glu не является частью OpenGL.Это вспомогательная библиотека для OpenGL, но токены из GLU не имеют смысла, если передаются в чистые функции OpenGL.Или с точки зрения непрофессионала: если вы хотите использовать токен, начинающийся с GLU_..., вы должны передать его функциям с префиксом glu....

0 голосов
/ 26 марта 2011

Это не столько ответ, сколько комментарий к вашему коду.Я вижу, что вы используете SFML в качестве фреймворка.SFML внутренне использует OpenGL, а sf::Image поддерживается текстурой OpenGL.Или другими словами: нет необходимости создавать текстуру OpenGL из sf::Image самостоятельно.На самом деле SFML заботится о том, чтобы все было правильно настроено для использования изображения в качестве текстуры OpenGL.

В вашем коде у вас есть это:

GLuint LoadTexture(sf::Image image)
{
    GLuint Texture;
    glGenTextures(1, &Texture);
    glBindTexture(GL_TEXTURE_2D, Texture);
    gluBuild2DMipmaps(GL_TEXTURE_2D, GL_RGBA,image.GetWidth(),image.GetHeight(), GL_RGBA,GL_UNSIGNED_BYTE,image.GetPixelsPtr());
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR);
    return Texture;
}

Вам вообще не нужна эта функция.Все, что вам нужно сделать, это image->Bind() вместо LoadTexture(image), потому что уже есть текстура.Просто взгляните на код sf::Image http://www.sfml -dev.org / Documentation / 1.6 / Image_8cpp-source.htm

...