Published on

01-Jan-2016View

213Download

1

Transcript

Matrices, Transformations and the 3D PipelineMatthew RuschPaul Keet

MatricesWhat is a MATRIXA concise and useful way of uniquely representing and working with linear transformations. Notation

Column or row major?Above is row major

Matrix Operations - ScalarScalar - MatrixAdditionSubtractionMultiplicationDivision

Matrix Operations - MatrixMatrix MatrixTransposeDeterminantMatrix AdditionMatrix MultiplicationMatrix Inverse

TransposeThe object obtained by replacing all elements aij with ajiOptimization note: Matrix elements down the diagonal can be left aloneProperties of the transpose:

DeterminantThe determinant of a matrix A is usually denoted det(A) or |A|For a 2x2 matrix, the determinant is defined as:

An NxN matrix can be expanded by minors to obtain:

Sign is given by (-1)i+j

Matrices with a determinant of zero are called singular matrices

Matrix MultiplicationEinstein summation

Associative

Not generally commutative[A][B] != [B][A]Identity matrices and matrices that are diagonal and of the same dimension are exceptions

Matrix InverseA matrix times its inverse yields an identity matrixSame as the transpose for orthogonal matricesGauss-Jordan eliminationGaussian eliminationLU Decomposition

Matrix Inverse2x2 matrix

3x3 matrix

Matrix TransformsScaleRotationAround isolated axisAround arbitrary axisTranslationCan be a vector additionHomogenous coordinates can be usedShearingAffinePreserves colinearity and relations of distancesProjection matrices are NOT affine

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