- inline FLP32 Determinante2x2( FLP32 a1, FLP32 a2, FLP32 b1, FLP32 b2 )
 - {
 - return a1 * b2 - b1 * a2;
 - }
 - inline FLP32 Determinante3x3( FLP32 a1, FLP32 a2, FLP32 a3,
 - FLP32 b1, FLP32 b2, FLP32 b3,
 - FLP32 c1, FLP32 c2, FLP32 c3 )
 - {
 - return a1 * Determinante2x2( b2, b3, c2, c3 ) - b1 * Determinante2x2( a2, a3, c2, c3 ) + c1 * Determinante2x2( a2, a3, b2, b3 );
 - }
 - void Matrix4::Inverse()
 - {
 - Matrix4 L_Result;
 - FLP32 L_Det;
 - L_Result.xx = Determinante3x3( yy, zy, wy, yz, zz, wz, yw, zw, ww );
 - L_Result.yx = -Determinante3x3( yx, zx, wx, yz, zz, wz, yw, zw, ww );
 - L_Result.zx = Determinante3x3( yx, zx, wx, yy, zy, wy, yw, zw, ww );
 - L_Result.wx = -Determinante3x3( yx, zx, wx, yy, zy, wy, yz, zz, wz );
 - L_Result.xy = -Determinante3x3( xy, zy, wy, xz, zz, wz, xw, zw, ww );
 - L_Result.yy = Determinante3x3( xx, zx, wx, xz, zz, wz, xw, zw, ww );
 - L_Result.zy = -Determinante3x3( xx, zx, wx, xy, zy, wy, xw, zw, ww );
 - L_Result.wy = Determinante3x3( xx, zx, wx, xy, zy, wy, xz, zz, wz );
 - L_Result.xz = Determinante3x3( xy, yy, wy, xz, yz, wz, xw, yw, ww );
 - L_Result.yz = -Determinante3x3( xx, yx, wx, xz, yz, wz, xw, yw, ww );
 - L_Result.zz = Determinante3x3( xx, yx, wx, xy, yy, wy, xw, yw, ww );
 - L_Result.wz = -Determinante3x3( xx, yx, wx, xy, yy, wy, xz, yz, wz );
 - L_Result.xw = -Determinante3x3( xy, yy, zy, xz, yz, zz, xw, yw, zw );
 - L_Result.yw = Determinante3x3( xx, yx, zx, xz, yz, zz, xw, yw, zw );
 - L_Result.zw = -Determinante3x3( xx, yx, zx, xy, yy, zy, xw, yw, zw );
 - L_Result.ww = Determinante3x3( xx, yx, zx, xy, yy, zy, xz, yz, zz );
 - L_Det = ( xx * L_Result.xx ) + ( xy * L_Result.yx ) + (xz * L_Result.zx ) + ( xw * L_Result.wx );
 - // Hier evntl. L_Det auf 0 prüfen, in diesem Fall ist die Matrix singular und kann nicht invertiert werden.
 - L_Det = 1.0f / L_Det;
 - *this = L_Result;
 - xx *= L_Det;
 - yx *= L_Det;
 - zx *= L_Det;
 - wx *= L_Det;
 - xy *= L_Det;
 - yy *= L_Det;
 - zy *= L_Det;
 - wy *= L_Det;
 - xz *= L_Det;
 - yz *= L_Det;
 - zz *= L_Det;
 - wz *= L_Det;
 - xw *= L_Det;
 - yw *= L_Det;
 - zw *= L_Det;
 - ww *= L_Det;
 - }
 
