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 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 is not an even multiple of width. INVALID_ENUM is generated if is not QUAD_MESH_SUN or TRIANGLE_MESH_SUN. New State None