Contents /
Previous /
Next
Drawing 3D Objects with GLUT
The following drawing routines are included in GLUT to
avoid having to reproduce the code to draw these models
in each program. The routines render all their graphics
in immediate mode.
Each three-dimensional model comes
in two flavors: wireframe without surface normals, and
solid with shading and surface normals. Use the solid
version when you are applying lighting.
Only the teapot
generates texture coordinates.
- void glutWireSphere(GLdouble
radius, GLint slices, GLint stacks);
void glutSolidSphere(GLdouble radius, GLint slices, GLint stacks);
void glutWireCube(GLdouble size);
void glutSolidCube(GLdouble size);
void glutWireTorus(GLdouble innerRadius, GLdouble outerRadius,
GLint nsides, GLint rings);
void glutSolidTorus(GLdouble innerRadius, GLdouble outerRadius,
GLint nsides, GLint rings);
void glutWireIcosahedron(void);
void glutSolidIcosahedron(void);
void glutWireOctahedron(void);
void glutSolidOctahedron(void);
void glutWireTetrahedron(void);
void glutSolidTetrahedron(void);
void glutWireDodecahedron(GLdouble radius);
void glutSolidDodecahedron(GLdouble radius);
void glutWireCone(GLdouble radius, GLdouble height, GLint slices,
GLint stacks);
void glutSolidCone(GLdouble radius, GLdouble height, GLint slices,
GLint stacks);
void glutWireTeapot(GLdouble size);
void glutSolidTeapot(GLdouble size);
Loading the Color Map
If you're using color-index mode, you might be surprised to discover there's
no OpenGL routine to load a color into a color lookup table. This is because
the process of loading a color map depends entirely on the window system. GLUT
provides a generalized routine to load a single color index with an RGB value,
glutSetColor().
- void glutSetColor(GLint
index, GLfloat
red, GLfloat green, GLfloat
blue);
eLoads the index in the color map, index, with the given red, green, and blue values. These values are normalized to lie in the range [0.0,1.0].