124 lines
3.1 KiB
Plaintext
124 lines
3.1 KiB
Plaintext
|
'\" te
|
||
|
'\"! tbl|eqn | mmdoc
|
||
|
'\"macro stdmacro
|
||
|
.ds Vn Version 1.2
|
||
|
.ds Dt 24 September 1999
|
||
|
.ds Re Release 1.2.1
|
||
|
.ds Dp Jan 14 18:30
|
||
|
.ds Dm 01 normal.gl
|
||
|
.ds Xs 22982 4 normal.gl
|
||
|
.TH GLNORMAL 3G
|
||
|
.SH NAME
|
||
|
.B "glNormal3b, glNormal3d, glNormal3f, glNormal3i, glNormal3s, glNormal3bv, glNormal3dv, glNormal3fv, glNormal3iv, glNormal3sv
|
||
|
\- set the current normal vector
|
||
|
|
||
|
.EQ
|
||
|
delim $$
|
||
|
.EN
|
||
|
.SH C SPECIFICATION
|
||
|
void \f3glNormal3b\fP(
|
||
|
GLbyte \fInx\fP,
|
||
|
.nf
|
||
|
.ta \w'\f3void \fPglNormal3b( 'u
|
||
|
GLbyte \fIny\fP,
|
||
|
GLbyte \fInz\fP )
|
||
|
.fi
|
||
|
void \f3glNormal3d\fP(
|
||
|
GLdouble \fInx\fP,
|
||
|
.nf
|
||
|
.ta \w'\f3void \fPglNormal3d( 'u
|
||
|
GLdouble \fIny\fP,
|
||
|
GLdouble \fInz\fP )
|
||
|
.fi
|
||
|
void \f3glNormal3f\fP(
|
||
|
GLfloat \fInx\fP,
|
||
|
.nf
|
||
|
.ta \w'\f3void \fPglNormal3f( 'u
|
||
|
GLfloat \fIny\fP,
|
||
|
GLfloat \fInz\fP )
|
||
|
.fi
|
||
|
void \f3glNormal3i\fP(
|
||
|
GLint \fInx\fP,
|
||
|
.nf
|
||
|
.ta \w'\f3void \fPglNormal3i( 'u
|
||
|
GLint \fIny\fP,
|
||
|
GLint \fInz\fP )
|
||
|
.fi
|
||
|
void \f3glNormal3s\fP(
|
||
|
GLshort \fInx\fP,
|
||
|
.nf
|
||
|
.ta \w'\f3void \fPglNormal3s( 'u
|
||
|
GLshort \fIny\fP,
|
||
|
GLshort \fInz\fP )
|
||
|
.fi
|
||
|
|
||
|
.SH PARAMETERS
|
||
|
.TP \w'\f2nx\fP\ \f2ny\fP\ \f2nz\fP\ \ 'u
|
||
|
\f2nx\fP, \f2ny\fP, \f2nz\fP
|
||
|
Specify the $x$, $y$, and $z$ coordinates of the new current normal.
|
||
|
The initial value of the current normal is the unit vector, (0, 0, 1).
|
||
|
.P
|
||
|
.SH C SPECIFICATION
|
||
|
void \f3glNormal3bv\fP(
|
||
|
const GLbyte \fI*v\fP )
|
||
|
.nf
|
||
|
.fi
|
||
|
void \f3glNormal3dv\fP(
|
||
|
const GLdouble \fI*v\fP )
|
||
|
.nf
|
||
|
.fi
|
||
|
void \f3glNormal3fv\fP(
|
||
|
const GLfloat \fI*v\fP )
|
||
|
.nf
|
||
|
.fi
|
||
|
void \f3glNormal3iv\fP(
|
||
|
const GLint \fI*v\fP )
|
||
|
.nf
|
||
|
.fi
|
||
|
void \f3glNormal3sv\fP(
|
||
|
const GLshort \fI*v\fP )
|
||
|
.nf
|
||
|
.fi
|
||
|
|
||
|
.SH PARAMETERS
|
||
|
.TP
|
||
|
\f2v\fP
|
||
|
Specifies a pointer to an array of three elements:
|
||
|
the $x$, $y$, and $z$ coordinates of the new current normal.
|
||
|
.P
|
||
|
.SH DESCRIPTION
|
||
|
The current normal is set to the given coordinates
|
||
|
whenever \%\f3glNormal\fP is issued.
|
||
|
Byte, short, or integer arguments are converted to floating-point
|
||
|
with a linear mapping that maps the most positive representable integer
|
||
|
value to 1.0,
|
||
|
and the most negative representable integer value to \-1.0.
|
||
|
.P
|
||
|
Normals specified with \%\f3glNormal\fP need not have unit length.
|
||
|
If \%\f3GL_NORMALIZE\fP is enabled,
|
||
|
then normals of any length specified with \%\f3glNormal\fP are normalized after transformation.
|
||
|
If \%\f3GL_RESCALE_NORMAL\fP is enabled, normals are scaled by a scaling factor
|
||
|
derived from the modelview matrix. \%\f3GL_RESCALE_NORMAL\fP requires that the
|
||
|
originally specified normals were of unit length, and that the modelview
|
||
|
matrix contain only uniform scales for proper results.
|
||
|
To enable and disable normalization, call \%\f3glEnable\fP and \%\f3glDisable\fP
|
||
|
with either \%\f3GL_NORMALIZE\fP or \%\f3GL_RESCALE_NORMAL\fP.
|
||
|
Normalization is initially disabled.
|
||
|
.SH NOTES
|
||
|
The current normal can be updated at any time.
|
||
|
In particular, \%\f3glNormal\fP can be called between a call to \%\f3glBegin\fP and
|
||
|
the corresponding call to \%\f3glEnd\fP.
|
||
|
.SH ASSOCIATED GETS
|
||
|
\%\f3glGet\fP with argument \%\f3GL_CURRENT_NORMAL\fP
|
||
|
.br
|
||
|
\%\f3glIsEnabled\fP with argument \%\f3GL_NORMALIZE\fP
|
||
|
.br
|
||
|
\%\f3glIsEnabled\fP with argument \%\f3GL_RESCALE_NORMAL\fP
|
||
|
.SH SEE ALSO
|
||
|
\%\f3glBegin(3G)\fP,
|
||
|
\%\f3glColor(3G)\fP,
|
||
|
\%\f3glIndex(3G)\fP,
|
||
|
\%\f3glNormalPointer(3G)\fP,
|
||
|
\%\f3glTexCoord(3G)\fP,
|
||
|
\%\f3glVertex(3G)\fP
|