diff options
author | Sergeanur <s.anureev@yandex.ua> | 2020-01-29 12:00:40 +0100 |
---|---|---|
committer | Sergeanur <s.anureev@yandex.ua> | 2020-01-29 12:00:40 +0100 |
commit | 81de0e0cbd7d3834c71282348ce61b69474a01e8 (patch) | |
tree | 4fd0e0bc5390b85215d59e95e651a959cca71e8a /src | |
parent | readme change (diff) | |
download | re3-81de0e0cbd7d3834c71282348ce61b69474a01e8.tar re3-81de0e0cbd7d3834c71282348ce61b69474a01e8.tar.gz re3-81de0e0cbd7d3834c71282348ce61b69474a01e8.tar.bz2 re3-81de0e0cbd7d3834c71282348ce61b69474a01e8.tar.lz re3-81de0e0cbd7d3834c71282348ce61b69474a01e8.tar.xz re3-81de0e0cbd7d3834c71282348ce61b69474a01e8.tar.zst re3-81de0e0cbd7d3834c71282348ce61b69474a01e8.zip |
Diffstat (limited to 'src')
-rw-r--r-- | src/core/FileLoader.cpp | 2 | ||||
-rw-r--r-- | src/peds/PedIK.cpp | 8 |
2 files changed, 5 insertions, 5 deletions
diff --git a/src/core/FileLoader.cpp b/src/core/FileLoader.cpp index 8fb4b4d9..b49fccbb 100644 --- a/src/core/FileLoader.cpp +++ b/src/core/FileLoader.cpp @@ -679,7 +679,7 @@ CFileLoader::LoadMLOInstance(int id, const char *line) &scale.x, &scale.y, &scale.z, &rot.x, &rot.y, &rot.z, &angle); - float rad = 2.0f * (PI / 2.0f - Atan2(angle, Sqrt(1.0f - SQR(angle)))); + float rad = Acos(angle) * 2.0f; CInstance *inst = CModelInfo::GetMloInstanceStore().alloc(); minfo->lastInstance++; diff --git a/src/peds/PedIK.cpp b/src/peds/PedIK.cpp index c8f0409f..bfc9186d 100644 --- a/src/peds/PedIK.cpp +++ b/src/peds/PedIK.cpp @@ -344,11 +344,11 @@ void CPedIK::ExtractYawAndPitchWorld(RwMatrixTag *mat, float *yaw, float *pitch) { float f = clamp(DotProduct(mat->up, CVector(0.0f, 1.0f, 0.0f)), -1.0f, 1.0f); - *yaw = HALFPI - Atan2(f, Sqrt(1.0f - f * f)); + *yaw = Acos(f); if (mat->up.x > 0.0f) *yaw = -*yaw; f = clamp(DotProduct(mat->right, CVector(0.0f, 0.0f, 1.0f)), -1.0f, 1.0f); - *pitch = HALFPI - Atan2(f, Sqrt(1.0f - f * f)); + *pitch = Acos(f); if (mat->up.z > 0.0f) *pitch = -*pitch; } @@ -356,11 +356,11 @@ void CPedIK::ExtractYawAndPitchLocal(RwMatrixTag *mat, float *yaw, float *pitch) { float f = clamp(DotProduct(mat->at, CVector(0.0f, 0.0f, 1.0f)), -1.0f, 1.0f); - *yaw = HALFPI - Atan2(f, Sqrt(1.0f - f * f)); + *yaw = Acos(f); if (mat->at.y > 0.0f) *yaw = -*yaw; f = clamp(DotProduct(mat->right, CVector(1.0f, 0.0f, 0.0f)), -1.0f, 1.0f); - *pitch = HALFPI - Atan2(f, Sqrt(1.0f - f * f)); + *pitch = Acos(f); if (mat->up.x > 0.0f) *pitch = -*pitch; } |