Tôi chắc chắn rằng mọi thứ được liên kết chính xác. Ban đầu tôi đã sử dụng glload và glfw từ GLSDK không chính thức nhưng sau đó tôi quyết định loại bỏ glload có nghĩa là tôi phải sử dụng glew để có được các tiêu đề hiện đại.Vi phạm truy cập. khi sử dụng GLEW và GLFW
#include <GL/glew.h>
#include <GL/glfw.h>
Tôi đã bao gồm glew trước khi glfw theo hướng dẫn.
Trong thời gian chạy cửa sổ OpenGL mở
//(relevant code)
if(!glewInit()) {return -1; }
if(!glfwInit()) {return -1; }
glfwOpenWindowHint(GLFW_OPENGL_VERSION_MAJOR, 3);
glfwOpenWindowHint(GLFW_OPENGL_VERSION_MINOR, 2);
glfwOpenWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);
// also tried glfwOpenWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_COMPAT_PROFILE);
if(!glfwOpenWindow(1024, 768, 8, 8, 8, 8, 24, 8, GLFW_WINDOW)){
glfwTerminate();
return -1;
}
glfwSetWindowTitle("OpenGL 3.2");
//init method
glGenVertexArrays(1, &vao); //<< Access violation here.
Bất cứ ý tưởng gì vấn đề của tôi là ở đây?
Tôi đã xem xét. "Truy cập vi phạm bằng cách sử dụng VBO với glew" Nhưng nó đã không giúp đỡ.
Cảm ơn bạn Tôi đã di chuyển như bạn đã nói. if (! glewInit()) {return -1; } là không chính xác để tôi cần phải kiểm tra giá trị nó trả về. vì nó không phải là một bool – Andrew