Vertex (computer graphics)
A vertex (plural vertices) in computer graphics is a data structure that describes certain attributes, like the position of a point in 2D or 3D space, at multiple points on a surface.
Application to 3D models
3D models are most-often represented as triangulated polyhedra forming a triangle mesh. Non triangular surfaces can be converted to an array of triangles through tessellation. Attributes from the vertices are typically interpolated across mesh surfaces.
Vertex attributes
The vertices of triangles are associated not only with spatial position but also with other values used to render the object correctly. Most attributes of a vertex represent vectors in the space to be rendered. These vectors are typically 1 (x), 2 (x, y), or 3 (x, y, z) dimensional and can include a fourth homogeneous coordinate (w). These values are given meaning by a material description. In realtime rendering these properties are used by a vertex shader or vertex pipeline.
Such attributes can include:
Vertex attributes in OpenGL
The following is a table of built in attributes of vertices in the OpenGL standard.
GL attribute name | attribute defined (data value size) |
---|---|
gl_Vertex | Position (vec4) |
gl_Normal | Normal (vec4) |
gl_Color | Primary color of vertex (vec4) |
gl_MultiTexCoord0 | Texture coordinate of texture unit 0 (vec4) |
gl_MultiTexCoord1 | Texture coordinate of texture unit 1 (vec4) |
gl_MultiTexCoord2 | Texture coordinate of texture unit 2 (vec4) |
gl_MultiTexCoord3 | Texture coordinate of texture unit 3 (vec4) |
gl_MultiTexCoord4 | Texture coordinate of texture unit 4 (vec4) |
gl_MultiTexCoord5 | Texture coordinate of texture unit 5 (vec4) |
gl_MultiTexCoord6 | Texture coordinate of texture unit 6 (vec4) |
gl_MultiTexCoord7 | Texture coordinate of texture unit 7 (vec4) |
gl_FogCoord | Fog Coord (float) |
See also
For how vertices are processed on 3D graphics cards, see shader.
References
- ↑ Christen, Martin. "Clockworkcoders Tutorials: Vertex Attributes". Khronos Group. Retrieved 26 January 2009.