openGL之API学习(一八七)gl_Vertex
Posted hankern
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了openGL之API学习(一八七)gl_Vertex相关的知识,希望对你有一定的参考价值。
gl_Vertex表示传入进来的顶点 比如:三角形 正方体的顶点。从glsl 140开始就没有这个内置变量了。
#version 430
uniform mat4 projMat;
uniform mat4 viewMat;
uniform mat4 modelMat;
layout(location = 0)in vec3 in_position; // matches gl :: EnableVertexAttribArray(0);
layout(location = 1)in vec2 in_uv; // matches gl :: EnableVertexAttribArray(1);
out vec2 uv;
void main()
{
gl_Position = projMat * viewMat * modelMat * vec4(in_position,1.0);
uv = in_uv;
}
// bind vertex buffer
glBindBuffer(GL_ARRAY_BUFFER, VertBuffer);
glBufferData(GL_ARRAY_BUFFER, sizeof(float) * size, verts, GL_STATIC_DRAW);
// enable arrays
glEnableVertexAttribArray(0);
// set pointers
glVertexAttribPointer(0,3,GL_FLOAT, GL_FALSE, sizeof(float) * floatsPerVertex, 0);
// render ComplexSurface
glDrawArrays(GL_TRIANGLE_FAN, 0, size);
glDisableVertexAttribArray(0);
以上是关于openGL之API学习(一八七)gl_Vertex的主要内容,如果未能解决你的问题,请参考以下文章
openGL之API学习(一八五)GLSL ESSL如何监测运行平台
openGL之API学习(一八六)OpenGL/ES requires precision specifier on this float type
openGL之API学习(一八二)Link failed because of invalid vertex shader