diff options
author | Roman Masanin <36927roma@gmail.com> | 2020-09-14 20:47:15 +0200 |
---|---|---|
committer | Roman Masanin <36927roma@gmail.com> | 2020-09-14 20:47:15 +0200 |
commit | 97550b4fd90cf1c3e9704ac03295475a3a21b01c (patch) | |
tree | 2f415a4829c705e6a2cdfb033ad861bf448aa7e5 /src/render | |
parent | finish work on ProcessPlayerVehicleEngine and cleanup (diff) | |
parent | Move a bunch of math to cpp files + small fixes (diff) | |
download | re3-97550b4fd90cf1c3e9704ac03295475a3a21b01c.tar re3-97550b4fd90cf1c3e9704ac03295475a3a21b01c.tar.gz re3-97550b4fd90cf1c3e9704ac03295475a3a21b01c.tar.bz2 re3-97550b4fd90cf1c3e9704ac03295475a3a21b01c.tar.lz re3-97550b4fd90cf1c3e9704ac03295475a3a21b01c.tar.xz re3-97550b4fd90cf1c3e9704ac03295475a3a21b01c.tar.zst re3-97550b4fd90cf1c3e9704ac03295475a3a21b01c.zip |
Diffstat (limited to 'src/render')
-rw-r--r-- | src/render/Glass.cpp | 2 | ||||
-rw-r--r-- | src/render/Skidmarks.cpp | 7 | ||||
-rw-r--r-- | src/render/WaterCannon.cpp | 3 |
3 files changed, 6 insertions, 6 deletions
diff --git a/src/render/Glass.cpp b/src/render/Glass.cpp index ee36bad3..c52d49bd 100644 --- a/src/render/Glass.cpp +++ b/src/render/Glass.cpp @@ -700,7 +700,7 @@ CGlass::WindowRespondsToExplosion(CEntity *entity, CVector point) if ( fDistToGlass < 10.0f ) { - distToGlass.Normalise(0.3f); + distToGlass *= (0.3f / fDistToGlass); // normalise WindowRespondsToCollision(object, 10000.0f, distToGlass, object->GetPosition(), true); } else diff --git a/src/render/Skidmarks.cpp b/src/render/Skidmarks.cpp index f2a66db1..0251878a 100644 --- a/src/render/Skidmarks.cpp +++ b/src/render/Skidmarks.cpp @@ -215,10 +215,11 @@ CSkidmarks::RegisterOne(uintptr id, const CVector &pos, float fwdX, float fwdY, aSkidmarks[i].m_pos[aSkidmarks[i].m_last] = pos; - CVector2D dist = aSkidmarks[i].m_pos[aSkidmarks[i].m_last] - aSkidmarks[i].m_pos[aSkidmarks[i].m_last-1]; - dist.Normalise(); + CVector2D right(aSkidmarks[i].m_pos[aSkidmarks[i].m_last].y - aSkidmarks[i].m_pos[aSkidmarks[i].m_last - 1].y, + aSkidmarks[i].m_pos[aSkidmarks[i].m_last - 1].x - aSkidmarks[i].m_pos[aSkidmarks[i].m_last].x); + + right.Normalise(); fwd.Normalise(); - CVector2D right(dist.y, -dist.x); float turn = DotProduct2D(fwd, right); turn = Abs(turn) + 1.0f; aSkidmarks[i].m_sideX[aSkidmarks[i].m_last] = right.x * turn * 0.125f; diff --git a/src/render/WaterCannon.cpp b/src/render/WaterCannon.cpp index 2ef10d77..2b34db37 100644 --- a/src/render/WaterCannon.cpp +++ b/src/render/WaterCannon.cpp @@ -140,8 +140,7 @@ void CWaterCannon::Render(void) if ( !bInit ) { CVector cp = CrossProduct(m_avecPos[pointB] - m_avecPos[pointA], TheCamera.GetForward()); - cp.Normalise(0.05f); - norm = cp; + norm = cp * (0.05f / cp.Magnitude()); bInit = true; } |