home *** CD-ROM | disk | FTP | other *** search
-
-
-
- mmmmmmmmooooddddeeee((((3333GGGG)))) mmmmmmmmooooddddeeee((((3333GGGG))))
-
-
-
- NNNNAAAAMMMMEEEE
- mmmmmmmmooooddddeeee - sets the current matrix mode
-
- FFFFOOOORRRRTTTTRRRRAAAANNNN 77777777 SSSSPPPPEEEECCCCIIIIFFFFIIIICCCCAAAATTTTIIIIOOOONNNN
- ssssuuuubbbbrrrroooouuuuttttiiiinnnneeee mmmmmmmmooooddddeeee((((mmmm))))
- iiiinnnntttteeeeggggeeeerrrr****4444 mmmm
-
- PPPPAAAARRRRAAAAMMMMEEEETTTTEEEERRRRSSSS
- _m expects a symbolic constant, one of:
-
- MMMMSSSSIIIINNNNGGGGLLLL puts the system into single-matrix mode. In single-matrix
- mode, all modeling, viewing, and projection transformations are done
- using a single matrix that combines all these transformations. This
- is the default matrix mode.
-
- MMMMVVVVIIIIEEEEWWWWIIII puts the system into multi-matrix mode. In this mode, separate
- ModelView, Projection, and Texture matrices are maintained. The
- ModelView matrix is modified by all matrix operations, except for
- ppppeeeerrrrssssppppeeee, oooorrrrtttthhhhoooo, oooorrrrtttthhhhoooo2222, and wwwwiiiinnnnddddoooowwww. which always replace the current
- Projection matrix.
-
- MMMMPPPPRRRROOOOJJJJEEEE puts the system into multi-matrix mode. In this mode, separate
- ModelView, Projection, and Texture matrices are maintained. The
- Projection matrix is modified by all matrix operations.
-
- MMMMTTTTEEEEXXXXTTTTUUUU puts the system into multi-matrix mode. In this mode, separate
- ModelView, Projection, and Texture matrices are maintained. The
- Texture matrix is modified by all matrix operations, except for
- ppppeeeerrrrssssppppeeee, oooorrrrtttthhhhoooo, oooorrrrtttthhhhoooo2222, and wwwwiiiinnnnddddoooowwww. which always replace the current
- Projection matrix.
-
- DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
- mmmmmmmmooooddddeeee specifies which matrix is the current matrix, and also determines
- whether the system is in single-matrix mode, or in multi-matrix mode.
- The matrix mode and current matrix are determined as follows:
-
- ____________________________________________
- mmode matrix mode current matrix
- ____________________________________________
- MSINGL single only matrix
- MVIEWI multi ModelView
- MPROJE multi Projection
- MTEXTU multi Texture
- ____________________________________________
- |||||||
-
-
-
-
-
- |||||||
-
-
-
-
-
-
-
- In single-matrix mode, vertices are transformed directly from object-
- coordinates to clip-coordinates by a single matrix. All matrix commands
- operate on this, the only matrix. Single-matrix mode is the default
- mode, but its use is discouraged, because many of the newer GL rendering
- features cannot be used while the system is in single-matrix mode.
-
-
-
-
-
- PPPPaaaaggggeeee 1111
-
-
-
-
-
-
- mmmmmmmmooooddddeeee((((3333GGGG)))) mmmmmmmmooooddddeeee((((3333GGGG))))
-
-
-
- In multi-matrix mode, vertices are transformed from object-coordinates to
- eye-coordinates by the ModelView matrix, then from eye-coordinates to
- clip-coordinates by the Projection matrix. A third matrix, the Texture
- matrix, is maintained to transform texture coordinates. While in multi-
- matrix mode, mmodes MMMMVVVVIIIIEEEEWWWWIIII, MMMMPPPPRRRROOOOJJJJEEEE, and MMMMTTTTEEEEXXXXTTTTUUUU specify which of the three
- matrices is operated on by matrix modification commands. Many GL
- rendering operations, including lighting, texture mapping, and user-
- defined clipping planes, require that the matrix mode be multi-matrix.
-
- Both the single matrix that is maintained while mmode is MMMMSSSSIIIINNNNGGGGLLLL mode, and
- the ModelView matrix that is maintained while not in MMMMSSSSIIIINNNNGGGGLLLL mode, have a
- stack depth of 32. The Projection and Texture matrices are not stacked.
- Thus matrix commands ppppuuuusssshhhhmmmmaaaa and ppppooooppppmmmmaaaatttt should not be called while the
- matrix mode is MMMMPPPPRRRROOOOJJJJEEEE or MMMMTTTTEEEEXXXXTTTTUUUU.
-
- Changes between matrix modes MMMMVVVVIIIIEEEEWWWWIIII, MMMMPPPPRRRROOOOJJJJEEEE and MMMMTTTTEEEEXXXXTTTTUUUU have no effect on
- the matrix values themselves. However, when matrix mode MMMMSSSSIIIINNNNGGGGLLLL is
- entered or left, all matrix stacks are forced to be empty, and all
- matrices are initialized to the identity matrix.
-
- SSSSEEEEEEEE AAAALLLLSSSSOOOO
- clippl, getmmo, lmbind, lookat, ortho, perspe, polarv, rot, rotate,
- scale, texbin, transl, window
-
- BBBBUUUUGGGGSSSS
- On IRIS-4D G, GT, GTX systems, and on the Personal IRIS, multi-matrix
- operation is incorrect while mmmmmmmmooooddddeeee is MMMMPPPPRRRROOOOJJJJEEEE. Specifically, vertices are
- transformed only by the Projection matrix, not by the ModelView matrix.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- PPPPaaaaggggeeee 2222
-
-
-
-