[Front] [Reference] [Imp. Guide] [Index]

glColor
[Prev] [Next]

glColor3b, glColor3d, glColor3f, glColor3i, glColor3s, glColor3ub, glColor3ui, glColor3us, glColor4b, glColor4d, glColor4f, glColor4i, glColor4s, glColor4ub, glColor4ui, glColor4us, glColor3bv, glColor3dv, glColor3fv, glColor3iv, glColor3sv, glColor3ubv, glColor3uiv, glColor3usv, glColor4bv, glColor4dv, glColor4fv, glColor4iv, glColor4sv, glColor4ubv, glColor4uiv, glColor4usv: set the current color.

C Specification | Parameters | Description | Notes | Associated Gets | See Also

[Up] C Specification

void glColor3b(
    GLbyte	 red,
    GLbyte	 green,
    GLbyte	 blue)
void glColor3d(
    GLdouble	 red,
    GLdouble	 green,
    GLdouble	 blue)
void glColor3f(
    GLfloat	 red,
    GLfloat	 green,
    GLfloat	 blue)
void glColor3i(
    GLint	 red,
    GLint	 green,
    GLint	 blue)
void glColor3s(
    GLshort	 red,
    GLshort	 green,
    GLshort	 blue)
void glColor3ub(
    GLubyte	 red,
    GLubyte	 green,
    GLubyte	 blue)
void glColor3ui(
    GLuint	 red,
    GLuint	 green,
    GLuint	 blue)
void glColor3us(
    GLushort	 red,
    GLushort	 green,
    GLushort	 blue)
void glColor4b(
    GLbyte	 red,
    GLbyte	 green,
    GLbyte	 blue,
    GLbyte	 alpha)
void glColor4d(
    GLdouble	 red,
    GLdouble	 green,
    GLdouble	 blue,
    GLdouble	 alpha)
void glColor4f(
    GLfloat	 red,
    GLfloat	 green,
    GLfloat	 blue,
    GLfloat	 alpha)
void glColor4i(
    GLint	 red,
    GLint	 green,
    GLint	 blue,
    GLint	 alpha)
void glColor4s(
    GLshort	 red,
    GLshort	 green,
    GLshort	 blue,
    GLshort	 alpha)
void glColor4ub(
    GLubyte	 red,
    GLubyte	 green,
    GLubyte	 blue,
    GLubyte	 alpha)
void glColor4ui(
    GLuint	 red,
    GLuint	 green,
    GLuint	 blue,
    GLuint	 alpha)
void glColor4us(
    GLushort	 red,
    GLushort	 green,
    GLushort	 blue,
    GLushort	 alpha)
void glColor3bv(
    const GLbyte *v) 
void glColor3dv(
    const GLdouble *v) 
void glColor3fv(
    const GLfloat *v) 
void glColor3iv(
    const GLint *v) 
void glColor3sv(
    const GLshort *v) 
void glColor3ubv(
    const GLubyte *v) 
void glColor3uiv(
    const GLuint *v) 
void glColor3usv(
    const GLushort *v) 
void glColor4bv(
    const GLbyte *v) 
void glColor4dv(
    const GLdouble *v) 
void glColor4fv(
    const GLfloat *v) 
void glColor4iv(
    const GLint *v) 
void glColor4sv(
    const GLshort *v) 
void glColor4ubv(
    const GLubyte *v) 
void glColor4uiv(
    const GLuint *v) 
void glColor4usv(
    const GLushort *v) 

[Up] Parameters

red, green, blue
Specify new red, green, and blue values for the current color.
alpha
Specifies a new alpha value for the current color. Included only in the four-argument glColor4 commands.
v
Specifies a pointer to an array that contains red, green, blue, and (sometimes) alpha values.

[Up] Description

The GL stores both a current single-valued color index and a current four-valued RGBA color. glColor sets a new four-valued RGBA color. glColor has two major variants: glColor3 and glColor4. glColor3 variants specify new red, green, and blue values explicitly and set the current alpha value to 1.0 (full intensity) implicitly. glColor4 variants specify all four color components explicitly.

glColor3b, glColor4b, glColor3s, glColor4s, glColor3i, and glColor4i take three or four signed byte, short, or long integers as arguments. When v is appended to the name, the color commands can take a pointer to an array of such values.

Current color values are stored in floating-point format, with unspecified mantissa and exponent sizes. Unsigned integer color components, when specified, are linearly mapped to floating-point values such that the largest representable value maps to 1.0 (full intensity), and 0 maps to 0.0 (zero intensity). Signed integer color components, when specified, are linearly mapped to floating-point values such that the most positive representable value maps to 1.0, and the most negative representable value maps to -1.0. (Note that this mapping does not convert 0 precisely to 0.0.) Floating-point values are mapped directly.

Neither floating-point nor signed integer values are clamped to the range [0, 1] before the current color is updated. However, color components are clamped to this range before they are interpolated or written into a color buffer.

[Up] Notes

The initial value for the current color is (1, 1, 1, 1).

The current color can be updated at any time. In particular, glColor can be called between a call to glBegin and the corresponding call to glEnd.

[Up] Associated Gets

glGet with argument GL_CURRENT_COLOR
glGet with argument GL_RGBA_MODE

[Up] See Also

glIndex

[Prev] [Next]
Front Reference [Imp. Guide] Index