我刚刚从 GLFW 2.7 升级到 3.0.1。在摆弄它以使其工作后,我在调用 glGenVertexArrays(); 时遇到了访问冲突;
Graphics::Graphics():camera(*this){
glfwInit();
glfwWindowHint( GLFW_CONTEXT_VERSION_MAJOR, 3 );
glfwWindowHint( GLFW_CONTEXT_VERSION_MINOR, 2 );
glfwWindowHint( GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE );
glfwWindowHint( GLFW_RESIZABLE, GL_FALSE );
window = glfwCreateWindow(800, 600, "OpenGL Window", 0, 0);
// Initialize GLEW
glewExperimental = GL_TRUE;
glewInit();
// Create Vertex Array Object
glGenVertexArrays(1, &vao);
glBindVertexArray(vao);
}
我不确定出了什么问题,因为这在以前有效,尽管代码(除了 gen 和 bind 调用)是在初始化函数中而不是在构造函数中(因为 GLFW 现在支持多窗口,尽管我只打算使用一个) .