diff options
Diffstat (limited to 'engines/titanic/star_control/fmatrix.cpp')
-rw-r--r-- | engines/titanic/star_control/fmatrix.cpp | 20 |
1 files changed, 4 insertions, 16 deletions
diff --git a/engines/titanic/star_control/fmatrix.cpp b/engines/titanic/star_control/fmatrix.cpp index a4cfec8b40..5885658835 100644 --- a/engines/titanic/star_control/fmatrix.cpp +++ b/engines/titanic/star_control/fmatrix.cpp @@ -94,25 +94,13 @@ void FMatrix::set(const DVector &row1, const DVector &row2, const DVector &row3) } void FMatrix::fn1(const FVector &v) { - _row3._x = v._x; + _row3 = v; + _row2 = _row3.fn1(); - FVector tempVector; - _row3.fn1(&tempVector); - - _row2._x = tempVector._x; - _row2._y = tempVector._y; - _row2._z = tempVector._z; - - _row3.crossProduct(tempVector, _row2); - _row1._x = _row2._x; - _row1._y = _row2._y; - _row1._z = _row2._z; + _row1 = _row3.crossProduct(_row2); _row1.normalize(); - _row3.crossProduct(tempVector, _row1); - _row2._x = _row1._x; - _row2._y = _row1._y; - _row2._z = _row1._z; + _row2 = _row3.crossProduct(_row1); _row2.normalize(); } |