Computergrafik

Projektionsmatrix

Augenkoordinaten | | MVP Matrix

Simulation der perspektivischen Projektion (einer einfachen Lochkamera)

  • Soweit wie möglich als 4×4 Matrix
  • Projektion ist $*n$ gefolgt von $*\frac{1}{-p_z}$
  1. Multiplikation mit $n$ entspricht uniformer 3×3 Skalierungiergsmatrix M.
$ M = \left( \begin{array}{c c c c} n & 0 & 0 & 0 \\ 0 & n & 0 & 0 \\ 0 & 0 & n & 0 \\ 0 & 0 & 0 & 0 \end{array} \right) $
  1. Perspektivische Division durch $-z$ entspricht homogener Koordinate $w=-z$, durch welche bei der Homogenisierung geteilt wird. Daraus ergibt sich das −1 Element in folgender Projektionsmatrix M:
$ M = \left( \begin{array}{c c c c} n & 0 & 0 & 0 \\ 0 & n & 0 & 0 \\ 0 & 0 & n & 0 \\ 0 & 0 & -1 & 0 \end{array} \right) $

Normalisierte Projektionsmatrix (einer Kamera mit Objektiv$fovy$ & $aspect$):

  • Normalisierung der x- und y-Koordinaten ($*\frac{2}{w}$ bzw. $*\frac{2}{h}$)
  • mit $w = r-l = 2\tan(fovy/2)aspect$
  • und $h = t-b = 2\tan(fovy/2)$
  • Tiefe z soll erhalten bleiben
    • Z-Werte im Bereich [-near,-far] werden auf [−1,1] normalisiert
    • Z-Puffer Algorithmus kann Ãœberdeckung entscheiden
$ M_P = \left( \begin{array}{c c c c} \frac{2n}w & 0 & 0 & 0 \\ 0 & \frac{2n}h & 0 & 0 \\ 0 & 0 & -\frac{n+f}{f-n} & -2\frac{fn}{f-n} \\ 0 & 0 & -1 & 0 \end{array} \right) $

Hinweis: Für die uniforme Projektionsmatrix ist $w=h=2$.

Augenkoordinaten | | MVP Matrix

Options: