glBindFramebuffer没有定义?

时间:2016-01-20 16:42:31

标签: c++ opengl glfw

我已经重新安装了Code :: Blocks和GLFW3,终于厌倦了无法进行实验并在我的电脑上用c ++做了大约一两个月的东西,我已经足够远到我试图做一个简单的地方了被清除的窗口。问题是除了漆黑的黑暗外,窗户根本没有被清除。起初我以为可能是因为我使用了一个函数来绘制窗口,但这也不是问题所在。我尝试在清除之前添加glBindFramebuffer(GL_FRAMEBUFFER,0);,看看是否能解决问题,但编译器说glBindFramebuffer没有被声明。

这里是main.cpp

#include <GLFW/glfw3.h>

void loop(GLFWwindow* window,bool &quit);

int main()
{
    glfwInit();

    glfwWindowHint(GLFW_VERSION_MAJOR,4);
    glfwWindowHint(GLFW_VERSION_MINOR,5);

    GLFWwindow* window=glfwCreateWindow(512,512,"Test",NULL,NULL);

    glClearColor(1.0f,1.0f,1.0f,1.0f);

    bool quit=false;
    do
    {
        loop(window,quit);
    }while(quit==false);

    glfwTerminate();

    return 0;
}

和loop.cpp

#include <GLFW/glfw3.h>

void loop(GLFWwindow* window,bool &quit){
    glfwPollEvents();

    if(glfwGetKey(window,GLFW_KEY_ESCAPE)==GLFW_PRESS)
        quit=true;

    glBindFramebuffer(GL_FRAMEBUFFER,0); <-Error here
    glClear(GL_COLOR_BUFFER_BIT);

    glfwSwapBuffers(window);
}
编辑:所以在弄清楚我需要加载函数之后我已经尝试过GLEW无济于事,GL3W似乎并没有在linux上工作而且所有其他选项似乎太过该死了以前它是什么呢是的,并且无论如何都不会工作。

0 个答案:

没有答案