OpenGL 3.0 - 绘制没有VBO或VAO的三角形?

时间:2015-07-09 19:49:25

标签: c++ opengl

我正在尝试交叉OpenGL ES - OpenGL 3.0(非ES)代码来绘制三角形,只是更改正在使用的着色器。

该代码适用于OpenGL ES版本,但不适用于OpenGL 3.0版本。这就是我正在做的事情:

顶点着色器:

#version 330 core
in vec3 a_v4Position;
void main(){
gl_Position = vec4(a_v4Position, 1.0);
}

片段着色器:

#version 330 core
out vec3 color;
void main(){
color = vec3(0,1,0);
}

绘制三角形的代码(GLProgram正确链接)

const float triangleVertices[] =
{
     0.0f,  0.5f, 0.0f,
    -0.5f, -0.5f, 0.0f,
     0.5f, -0.5f, 0.0f,
};

positionAttribLocation = glGetAttribLocation(GLProgram, "a_v4Position");
glEnableVertexAttribArray(positionAttribLocation);
glVertexAttribPointer(positionAttribLocation, 3, GL_FLOAT, GL_FALSE, 0, TriangleVertices);
glDrawArrays(GL_TRIANGLES, 0, 3);

0 个答案:

没有答案