我正在使用 GLEW 和 GLFW。我的程序构建成功,但是当它运行时,我得到的只是黑屏。我知道这不是着色器代码的问题,因为我已经在 QT 中测试了 installShaders 函数并且它运行良好,所以我假设我错误地使用了 GLFW。
#include <stdio.h>
#include <stdlib.h>
#include <GL\glew.h>
#include <GLFW\glfw3.h>
GLFWwindow* window;
extern const char* vertexShaderCode;
extern const char* fragmentShaderCode;
void sendDataToOpenGL()
{
GLfloat verts[] =
{
+0.0f, +1.0f,
+1.0f, +0.0f, +0.0f,
-1.0f, -1.0f,
+1.0f, +0.0f, +0.0f,
+1.0f, -1.0f,
+1.0f, +0.0f, +0.0f,
};
GLuint vertexBufferID;
glGenBuffers(1, &vertexBufferID);
glBindBuffer(GL_ARRAY_BUFFER, vertexBufferID);
glBufferData(GL_ARRAY_BUFFER, sizeof(verts), verts, GL_STATIC_DRAW);
glEnableVertexAttribArray(0);
glVertexAttribPointer(0, 2, GL_FLOAT, GL_FALSE, sizeof(float) * 5, 0);
glEnableVertexAttribArray(1);
glVertexAttribPointer(1, 3, GL_FLOAT, GL_FALSE, sizeof(float) * 5, (char*)(sizeof(float) * 2)); …Run Code Online (Sandbox Code Playgroud)