*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->Tru64 Unix man pages -> glDrawRangeElements (3)              
Title
Content
Arch
Section
 

glDrawRangeElements(3G)

Contents


NAME    [Toc]    [Back]

       glDrawRangeElements - render primitives from array data

SYNOPSIS    [Toc]    [Back]

       void glDrawRangeElements(
               GLenum mode,
               GLuint start,
               GLuint end,
               GLsizei count,
               GLenum type,
               const GLvoid *indices );

PARAMETERS    [Toc]    [Back]

       Specifies what kind of primitives to render. Symbolic constants
 GL_POINTS, GL_LINE_STRIP,  GL_LINE_LOOP,  GL_LINES,
       GL_TRIANGLE_STRIP,      GL_TRIANGLE_FAN,     GL_TRIANGLES,
       GL_QUAD_STRIP,  GL_QUADS,  and  GL_POLYGON  are  accepted.
       Specifies  the  minimum  array index contained in indices.
       Specifies the maximum array index  contained  in  indices.
       Specifies  the  number of elements to be rendered.  Specifies
 the type of the values  in  count.  Must  be  one  of
       GL_UNSIGNED_BYTE,  GL_UNSIGNED_SHORT,  or GL_UNSIGNED_INT.
       Specifies a pointer to the location where the indices  are
       stored.

DESCRIPTION    [Toc]    [Back]

       glDrawRangeElements()  is  a restricted form of glDrawElements().
  mode, start, end, and  count  match  the  corresponding
  arguments  to  glDrawElements(),  with the additional
 constraint that all values in the arrays count must
       lie between start and end, inclusive.

       Implementations denote recommended maximum amounts of vertex
 and index  data,  which  may  be  queried  by  calling
       glGet()   with   argument   GL_MAX_ELEMENTS_VERTICES   and
       GL_MAX_ELEMENTS_INDICES.   If  "end"  -  "start"  +  1  is
       greater  than the value of GL_MAX_ELEMENTS_VERTICES, or if
       count  is  greater   than   the   value   of   GL_MAX_ELEMENTS_INDICES,
  then  the call may operate at reduced performance.
  There is no requirement that  all  vertices  in
       the range [start, end] be referenced.  However, the implementation
 may partially process unused vertices,  reducing
       performance  from  what  could be achieved with an optimal
       index set.

       When  glDrawRangeElements()  is  called,  it  uses   start
       sequential  elements  from  an  enabled array, starting at
       count to construct a  sequence  of  geometric  primitives.
       mode  specifies  what  kind of primitives are constructed,
       and how the array elements construct these primitives.  If
       more  than  one array is enabled, each is used. If GL_VERTEX_ARRAY
 is not enabled, no geometric primitives are constructed.


       Vertex  attributes  that  are  modified by glDrawRangeElements()
 have an unspecified  value  after  glDrawRangeElements()
   returns.   For  example,  if  GL_COLOR_ARRAY  is
       enabled, the value of the current color is undefined after
       glDrawRangeElements()  executes.  Attributes  that  aren't
       modified maintain their previous values.


NOTES    [Toc]    [Back]

       glDrawRangeElements() is available only if the GL  version
       is 1.2 or greater.

       glDrawRangeElements()  is  included  in display lists.  If
       glDrawRangeElements() is entered into a display list,  the
       necessary array data (determined by the array pointers and
       enables) is also entered into the  display  list.  Because
       the  array  pointers  and  enables  are client-side state,
       their values affect display lists when the lists are  created,
 not when the lists are executed.

ERRORS    [Toc]    [Back]

       It  is  an  error  for  indices  to  lie outside the range
       [start, end], but implementations may not check  for  this
       situation.  Such  indices  cause  implementation-dependent
       behavior.

       GL_INVALID_ENUM is generated if mode is  not  an  accepted
       value.

       GL_INVALID_VALUE is generated if count is negative.

       GL_INVALID_VALUE is generated if end < start.

       GL_INVALID_OPERATION is generated if glDrawRangeElements()
       is executed between the execution  of  glBegin()  and  the
       corresponding glEnd().

ASSOCIATED GETS    [Toc]    [Back]

       glGet() with argument GL_MAX_ELEMENTS_VERTICES
       glGet() with argument GL_MAX_ELEMENTS_INDICES

SEE ALSO    [Toc]    [Back]

      
      
       glArrayElement(3),   glColorPointer(3),   glDrawArrays(3),
       glDrawElements(3), glEdgeFlagPointer(3), glGetPointerv(3),
       glIndexPointer(3),    glInterleavedArrays(3),    glNormalPointer(3), glTexCoordPointer(3), glVertexPointer(3)



                                          glDrawRangeElements(3G)
[ Back ]
 Similar pages
Name OS Title
glarrayelementext IRIX specify the array elements used to render a vertex
glarrayelement IRIX render a vertex using the specified vertex array element
glArrayElement Tru64 render a vertex using the specified vertex array element
XmRenderTable HP-UX Data type for a render table
XmRenderTableCvtFromProp HP-UX A render table function that converts from a string representation to a render table
XmRenderTableCvtToProp HP-UX A render table function that converts a render table to a string representation
rs FreeBSD reshape a data array
rs OpenBSD reshape a data array
glvertexpointer IRIX define an array of vertex data
glVertexPointer Tru64 define an array of vertex data
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service