blob: c2921cc2fe37503a01e3694869bc6da1cffeff97 [file] [log] [blame]
Name
SUN_mesh_array
Name Strings
GL_SUN_mesh_array
Contact
Jack Middleton, Sun (Jack.Middleton 'at' sun.com)
Status
Shipping (version 1.1)
Version
$Date: 02/03/14 08:48:06 $Revision: 1.3 $
Number
257
Dependencies
OpenGL 1.1 is required
The extension is written against the OpenGL 1.3 Specification.
Overview
This extension defines a new mesh primitive.
The primitive can only be used with vertex arrays and cannot be used in
immediate mode. The application must arrange the vertices in row major format.
For example if a quad mesh is 4 vertices wide the, vertices in the first
row are the first 4 vertices and vertices in the second row are vertices 5
through 8.
IP Status
There are no known IP issues.
Issues
1. Should glDrawMultiMeshArraysSUN and/or glDrawRangeMeshArraysSUN
be included?
No. small meshes are not that common. A mesh is like a series of
triangle or quad meshes already.
New Procedures and Functions
glDrawMeshArraysSUN( GLenum mode, GLint first, GLsizei count, GLsizei width )
New Tokens
Accepted by the <mode> parameter of DrawMeshArraysSun,
QUAD_MESH_SUN 0x8614
TRIANGLE_MESH_SUN 0x8615
Additions to Chapter 2 of the 1.3 GL Specification (OpenGL Operation)
Section 2.8 Vertex Arrays:
The command
void DrawMeshArraysSUN( enum mode, int first, sizei count, sizei width );
constructs a mesh primitive using the elements first through first+count-1
of each enabled array. The mode specifies if it is a quad mesh or triangle
mesh. The only token values accepted by mode are QUAD_MESH_SUN and
TRIANGLE_MESH_SUN. Width specifies how many vertices are in each row
of the mesh. The elements must be arranged in row major order within the
arrays.
Additions to Chapter 3 of the 1.3 GL Specification (Rasterization)
None
Additions to Chapter 4 of the 1.3 GL Specification (Per-Fragment Operations
and the Framebuffer)
None
Additions to Chapter 5 of the 1.3 GL Specification (Special Functions)
None
Additions to Chapter 6 of the 1.3 GL Specification (State and State Requests)
None
Additions to the GLX / WGL / AGL Specifications
None
GLX Protocol
None
Errors
INVALID_VALUE is generated if <count> is not an even multiple of
width.
INVALID_ENUM is generated if <mode> is not QUAD_MESH_SUN or
TRIANGLE_MESH_SUN.
New State
None