mmode man page on IRIX

Man page or keyword search:  
man Server   31559 pages
apropos Keyword Search (all sections)
Output format
IRIX logo
[printable version]



mmode(3G)							     mmode(3G)

NAME
     mmode	- sets the current matrix mode

C SPECIFICATION
     void mmode(m)
     short m;

PARAMETERS
     m	 expects a symbolic constant, one of:

	 MSINGLE 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.

	 MVIEWING 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
	 perspective, ortho, ortho2, and window which always replace the
	 current Projection matrix.

	 MPROJECTION 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.

	 MTEXTURE 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
	 perspective, ortho, ortho2, and window which always replace the
	 current Projection matrix.

DESCRIPTION
     mmode 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
		   ____________________________________________
		      MSINGLE	    single	 only matrix
		     MVIEWING	     multi	  ModelView
		    MPROJECTION	     multi	  Projection
		     MTEXTURE	     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.

									Page 1

mmode(3G)							     mmode(3G)

     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 MVIEWING, MPROJECTION, and MTEXTURE 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 MSINGLE mode,
     and the ModelView matrix that is maintained while not in MSINGLE mode,
     have a stack depth of 32.	The Projection and Texture matrices are not
     stacked.  Thus matrix commands pushmatrix and popmatrix should not be
     called while the matrix mode is MPROJECTION or MTEXTURE.

     Changes between matrix modes MVIEWING, MPROJECTION and MTEXTURE have no
     effect on the matrix values themselves.  However, when matrix mode
     MSINGLE is entered or left, all matrix stacks are forced to be empty, and
     all matrices are initialized to the identity matrix.

SEE ALSO
     clipplane, getmmode, lmbind, lookat, ortho, perspective, polarview, rot,
     rotate, scale, texbind, translate, window

BUGS
     On IRIS-4D G, GT, GTX systems, and on the Personal IRIS, multi-matrix
     operation is incorrect while mmode is MPROJECTION.	 Specifically,
     vertices are transformed only by the Projection matrix, not by the
     ModelView matrix.

									Page 2

[top]

List of man pages available for IRIX

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net