Matrices, Transformations and the 3D Pipeline Matthew Rusch Paul Keet

  • Published on

  • View

  • Download

Embed Size (px)


<ul><li><p>Matrices, Transformations and the 3D PipelineMatthew RuschPaul Keet</p></li><li><p>MatricesWhat is a MATRIXA concise and useful way of uniquely representing and working with linear transformations. Notation</p><p>Column or row major?Above is row major</p></li><li><p>Matrix Operations - ScalarScalar - MatrixAdditionSubtractionMultiplicationDivision</p></li><li><p>Matrix Operations - MatrixMatrix MatrixTransposeDeterminantMatrix AdditionMatrix MultiplicationMatrix Inverse</p></li><li><p>TransposeThe object obtained by replacing all elements aij with ajiOptimization note: Matrix elements down the diagonal can be left aloneProperties of the transpose:</p></li><li><p>DeterminantThe determinant of a matrix A is usually denoted det(A) or |A|For a 2x2 matrix, the determinant is defined as:</p><p>An NxN matrix can be expanded by minors to obtain:</p><p>Sign is given by (-1)i+j</p><p>Matrices with a determinant of zero are called singular matrices</p></li><li><p>Matrix MultiplicationEinstein summation</p><p>Associative</p><p>Not generally commutative[A][B] != [B][A]Identity matrices and matrices that are diagonal and of the same dimension are exceptions</p></li><li><p>Matrix InverseA matrix times its inverse yields an identity matrixSame as the transpose for orthogonal matricesGauss-Jordan eliminationGaussian eliminationLU Decomposition</p></li><li><p>Matrix Inverse2x2 matrix</p><p>3x3 matrix</p></li><li><p>Matrix TransformsScaleRotationAround isolated axisAround arbitrary axisTranslationCan be a vector additionHomogenous coordinates can be usedShearingAffinePreserves colinearity and relations of distancesProjection matrices are NOT affine</p></li><li><p>Transformations in the 3D PipelineModel to World, or World TransformWorld to View, or View TransformOpenGL combines this with the world transform and calls it the modelview matrixLighting is done in world space in this caseView to Projection, or Projection TransformHow do we get from projection space to screen space?Screen TransformHomogenezation, or divide by wConcatination, or combining transforms</p></li></ul>