Example #1
0
 public void PopMatrix(EMatrix matrix)
 {
     if (_si[( int )matrix] > 0)
     {
         --_si[( int )matrix];
     }
     SetFlags(matrix);
 }
Example #2
0
 public void PushMatrix(EMatrix matrix)
 {
     if (_si[( int )matrix] < StackDepth - 1)
     {
         ++_si[( int )matrix];
         _stacks[( int )matrix][_si[( int )matrix]] =
             _stacks[( int )matrix][_si[( int )matrix - 1]];
     }
 }
Example #3
0
        private void SetFlags(EMatrix matrix)
        {
            switch (matrix)
            {
            case EMatrix.World:
                _matWorldF = true;
                _matWorldInverseTransposeF = true;
                _matWorldViewProjectionF   = true;
                break;

            case EMatrix.View:
                _matWorldViewProjectionF = true;
                _matViewProjectionF      = true;
                _matViewF = true;
                break;

            case EMatrix.Projection:
                _matWorldViewProjectionF = true;
                _matViewProjectionF      = true;
                _matProjectionF          = true;
                break;
            }
        }
Example #4
0
 public Matrix GetMatrix(EMatrix matrix)
 {
     return(_stacks[( int )matrix][_si[( int )matrix]]);
 }
Example #5
0
 public void MultMatrix(EMatrix matrix, Matrix mat)
 {
     _stacks[( int )matrix][_si[( int )matrix]] = mat * _stacks[( int )matrix][_si[( int )matrix]];
     SetFlags(matrix);
 }
Example #6
0
 public void LoadMatrix(EMatrix matrix, Matrix mat)
 {
     _stacks[( int )matrix][_si[( int )matrix]] = mat;
     SetFlags(matrix);
 }
Example #7
0
 public void LoadIdentity(EMatrix matrix)
 {
     _stacks[( int )matrix][_si[( int )matrix]] = Matrix.Identity;
     SetFlags(matrix);
 }