C SPECIFICATION

       void GLAPIENTRY glNormalPointer( GLenum type,
                                        GLsizei strid )



PARAMETERS

       type   Specifies  the  data type of each coordinate in the array.  Sym-
              bolic  constants  GL_BYTE,  GL_SHORT,  GL_INT,   GL_FLOAT,   and
              GL_DOUBLE are accepted. The initial value is GL_FLOAT.

       strid  Specifies  the byte offset between consecutive normals. If strid
              is 0- the initial value-the normals are understood to be tightly
              packed in the array.  The initial value is 0.

       _param3
              Specifies  a pointer to the first coordinate of the first normal
              in the array.  The initial value is 0.


DESCRIPTION

       glNormalPointer specifies the location and data format of an  array  of
       normals  to  use  when  rendering.  type specifies the data type of the
       normal coordinates and strid gives the byte stride from one  normal  to
       the  next,  allowing vertexes and attributes to be packed into a single
       array or stored in separate arrays.  (Single-array storage may be  more
       efficient  on  some  implementations; see glInterleavedArrays.)  When a
       normal array is specified,  type,  strid,  and  _param3  are  saved  as
       client-side state.

       To  enable  and  disable the normal array, call glEnableClientState and
       glDisableClientState with the argument GL_NORMAL_ARRAY. If enabled, the
       normal   array   is   used   when   glDrawArrays,   glDrawElements,  or
       glArrayElement is called.

       Use glDrawArrays to construct a sequence of primitives (all of the same
       type)  from  prespecified  vertex  and  vertex  attribute  arrays.  Use
       glArrayElement to specify primitives by indexing  vertexes  and  vertex
       attributes  and glDrawElements to construct a sequence of primitives by
       indexing vertexes and vertex attributes.


NOTES

       glNormalPointer is available only if the GL version is 1.1 or  greater.

       The  normal  array  is  initially  disabled  and  isn't  accessed  when
       glArrayElement, glDrawElements, or glDrawArrays is called.

       Execution of glNormalPointer is not allowed  between  glBegin  and  the
       corresponding  glEnd,  but  an error may or may not be generated. If an
       error is not generated, the operation is undefined.

       glNormalPointer is typically implemented on the client side.



SEE ALSO

       glArrayElement,    glColorPointer,    glDrawArrays,     glDrawElements,
       glEdgeFlagPointer,     glEnable,     glGetPointerv,     glIndexPointer,
       glInterleavedArrays,       glPopClientAttrib,       glPushClientAttrib,
       glTexCoordPointer, glVertexPointer



                                                           GLNORMALPOINTER(3G)

Man(1) output converted with man2html