1991-2006
Silicon Graphics, Inc.
glVertex
3G

# glVertex

specify a vertex

## C Specification

                    void glVertex2s
                    GLshort x
                    GLshort y

                    void glVertex2i
                    GLint x
                    GLint y

                    void glVertex2f
                    GLfloat x
                    GLfloat y

                    void glVertex2d
                    GLdouble x
                    GLdouble y

                    void glVertex3s
                    GLshort x
                    GLshort y
                    GLshort z

                    void glVertex3i
                    GLint x
                    GLint y
                    GLint z

                    void glVertex3f
                    GLfloat x
                    GLfloat y
                    GLfloat z

                    void glVertex3d
                    GLdouble x
                    GLdouble y
                    GLdouble z

                    void glVertex4s
                    GLshort x
                    GLshort y
                    GLshort z
                    GLshort w

                    void glVertex4i
                    GLint x
                    GLint y
                    GLint z
                    GLint w

                    void glVertex4f
                    GLfloat x
                    GLfloat y
                    GLfloat z
                    GLfloat w

                    void glVertex4d
                    GLdouble x
                    GLdouble y
                    GLdouble z
                    GLdouble w

## Parameters

`x`
`y`
`z`
`w`

  Specify x, y, z, and w coordinates of a vertex. Not all parameters are present in all forms of the command.

## C Specification

                    void glVertex2sv
                    const GLshort * v

                    void glVertex2iv
                    const GLint * v

                    void glVertex2fv
                    const GLfloat * v

                    void glVertex2dv
                    const GLdouble * v

                    void glVertex3sv
                    const GLshort * v

                    void glVertex3iv
                    const GLint * v

                    void glVertex3fv
                    const GLfloat * v

                    void glVertex3dv
                    const GLdouble * v

                    void glVertex4sv
                    const GLshort * v

                    void glVertex4iv
                    const GLint * v

                    void glVertex4fv
                    const GLfloat * v

                    void glVertex4dv
                    const GLdouble * v

## Parameters

`v`

  Specifies a pointer to an array of two, three, or four elements. The elements of a two-element array are x and y; of a three-element array, x, y, and z; and of a four-element array, x, y, z, and w.

## Description

`glVertex` commands are used within glBegin/glEnd pairs to specify point, line, and polygon vertices. The current color, normal, texture coordinates, and fog coordinate are associated with the vertex when `glVertex` is called.

When only x and y are specified, z defaults to 0 and w defaults to 1. When x, y, and z are specified, w defaults to 1.

## Notes

Invoking `glVertex` outside of a glBegin/glEnd pair results in undefined behavior.

## See Also

glBegin, glCallList, glColor, glEdgeFlag, glEvalCoord, glFogCoord, glIndex, glMaterial, glMultiTexCoord, glNormal, glRect, glTexCoord, glVertexPointer

## Copyright

Copyright 1991-2006 Silicon Graphics, Inc. This document is licensed under the SGI Free Software B License. For details, see http://oss.sgi.com/projects/FreeB/.