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学习(一八一)glTexGen

openGL之API学习(一八五)GLSL ESSL如何监测运行平台

openGL之API学习(一八六)OpenGL/ES requires precision specifier on this float type

openGL之API学习(一八二)Link failed because of invalid vertex shader

openGL之API学习(一八九)gl_Position gl_Vertex

openGL之API学习(一八零)POINTS LINES TRIANGLES QUADS 绘图顺序规则