[Scummvm-git-logs] scummvm master -> 44fce15f50906b20b73adcd4bf9225172617c1f4
dreammaster
dreammaster at scummvm.org
Sun Jun 4 04:05:19 CEST 2017
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
44fce15f50 TITANIC: Fix some vector calculations in marker lock-on code
Commit: 44fce15f50906b20b73adcd4bf9225172617c1f4
https://github.com/scummvm/scummvm/commit/44fce15f50906b20b73adcd4bf9225172617c1f4
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2017-06-03T22:05:08-04:00
Commit Message:
TITANIC: Fix some vector calculations in marker lock-on code
Changed paths:
engines/titanic/star_control/dvector.cpp
engines/titanic/star_control/star_control_sub21.cpp
diff --git a/engines/titanic/star_control/dvector.cpp b/engines/titanic/star_control/dvector.cpp
index 08a7e2d..b4a9ede 100644
--- a/engines/titanic/star_control/dvector.cpp
+++ b/engines/titanic/star_control/dvector.cpp
@@ -60,18 +60,18 @@ DVector DVector::fn3() const {
DVector vector = *this;
DVector dest;
dest._x = vector.normalize();
- dest._z = acos(vector._y);
+ dest._y = acos(vector._y);
if (ABS(vector._z) < 0.00001) {
if (vector._x < 0.0) {
- dest._y = 2 * M_PI - (M_PI / 2.0);
+ dest._z = 2 * M_PI - (M_PI / 2.0);
} else {
- dest._y = M_PI / 2.0;
+ dest._z = M_PI / 2.0;
}
} else {
- dest._y = atan(vector._x / vector._z);
+ dest._z = atan(vector._x / vector._z);
if (vector._x < 0.0)
- dest._y += 2 * M_PI;
+ dest._z += 2 * M_PI;
}
return dest;
@@ -80,8 +80,8 @@ DVector DVector::fn3() const {
DMatrix DVector::fn4(const DVector &v) {
const double FACTOR = 180.0 / M_PI;
DMatrix matrix1, matrix2, matrix3, matrix4;
- DVector vector1 = fn3();
+ DVector vector1 = fn3();
matrix1.setRotationMatrix(X_AXIS, vector1._y * FACTOR);
matrix2.setRotationMatrix(Y_AXIS, -(vector1._z * FACTOR));
matrix3 = matrix1.fn4(matrix2);
@@ -91,7 +91,6 @@ DMatrix DVector::fn4(const DVector &v) {
matrix1.setRotationMatrix(X_AXIS, vector1._y * FACTOR);
matrix2.setRotationMatrix(Y_AXIS, -(vector1._z * FACTOR));
matrix3 = matrix1.fn4(matrix2);
- matrix4 = matrix1.fn1();
return matrix4.fn4(matrix3);
}
diff --git a/engines/titanic/star_control/star_control_sub21.cpp b/engines/titanic/star_control/star_control_sub21.cpp
index 2dc90d5..bf5af80 100644
--- a/engines/titanic/star_control/star_control_sub21.cpp
+++ b/engines/titanic/star_control/star_control_sub21.cpp
@@ -48,7 +48,7 @@ void CStarControlSub21::proc10(const FVector &v1, const FVector &v2, const FVect
DVector vector1 = v1;
DVector vector2 = v2;
DMatrix matrix1 = vector2.fn4(vector1);
- FMatrix matrix2 = matrix1.fn4(m);
+ DMatrix matrix2 = matrix1.fn4(m);
_sub24.proc3(m, matrix2);
incLockCount();
More information about the Scummvm-git-logs
mailing list