Fix camera glitch (#1031)

This commit is contained in:
Christian Semmler
2024-06-13 16:09:14 -04:00
committed by GitHub
parent e5d66d597d
commit dd1c11a933
4 changed files with 9 additions and 11 deletions

View File

@@ -2790,7 +2790,7 @@ void LegoAnimationManager::FUN_10064b50(MxLong p_time)
if (m_unk0x430 && m_unk0x42c != NULL) {
MxMatrix mat;
if (p_time < 0 || p_time <= m_unk0x438) {
if (p_time < 0 || m_unk0x438 <= p_time) {
m_unk0x430 = FALSE;
m_unk0x42c->m_flags &= ~LegoTranInfo::c_bit1;
m_unk0x42c = NULL;
@@ -2807,7 +2807,7 @@ void LegoAnimationManager::FUN_10064b50(MxLong p_time)
m_unk0x4cc.Unknown6(mat, (float) (p_time - m_unk0x434) / 1000.0f);
VPV3(mat[3], m_unk0x43c[3], sub);
mat[3][4] = 1.0f;
mat[3][3] = 1.0f;
}
LegoROI* viewROI = VideoManager()->GetViewROI();

View File

@@ -706,12 +706,10 @@ void TimeROI::FUN_100a9b40(Matrix4& p_matrix, LegoTime p_time)
m_time = p_time;
Mx3DPointFloat targetPosition(p_matrix[3]);
Vector3 vec(m_local2world[3]);
// TODO: Figure out how to get type right for the call
((Vector3&) targetPosition).Sub(Vector3(m_local2world[3]));
float division = time * 0.001;
((Vector3&) targetPosition).Div(division);
((Vector3&) targetPosition).Sub(vec);
((Vector3&) targetPosition).Div(time * 0.001);
FUN_100a5a30(targetPosition);
}