Merge remote-tracking branch 'isle/master'

This commit is contained in:
Christian Semmler 2025-06-06 14:23:19 -07:00
commit 8acfdd8ccb
No known key found for this signature in database
GPG Key ID: 086DAA1360BEEE5C
5 changed files with 16 additions and 17 deletions

View File

@ -502,7 +502,7 @@ LegoROI* LegoCharacterManager::CreateActorROI(const char* p_key)
boundingBox.Max()[0] = g_actorLODs[c_topLOD].m_boundingBox[3];
boundingBox.Max()[1] = g_actorLODs[c_topLOD].m_boundingBox[4];
boundingBox.Max()[2] = g_actorLODs[c_topLOD].m_boundingBox[5];
roi->SetUnknown0x80(boundingBox);
roi->SetBoundingBox(boundingBox);
comp = new CompoundObject();
roi->SetComp(comp);
@ -553,7 +553,7 @@ LegoROI* LegoCharacterManager::CreateActorROI(const char* p_key)
childBoundingBox.Max()[0] = g_actorLODs[i + 1].m_boundingBox[3];
childBoundingBox.Max()[1] = g_actorLODs[i + 1].m_boundingBox[4];
childBoundingBox.Max()[2] = g_actorLODs[i + 1].m_boundingBox[5];
childROI->SetUnknown0x80(childBoundingBox);
childROI->SetBoundingBox(childBoundingBox);
CalcLocalTransform(
Mx3DPointFloat(g_actorLODs[i + 1].m_position),
@ -1075,7 +1075,7 @@ MxResult LegoCharacterManager::UpdateBoundingSphereAndBox(LegoROI* p_roi)
SET3(boundingBox.Min(), min);
SET3(boundingBox.Max(), max);
p_roi->SetUnknown0x80(boundingBox);
p_roi->SetBoundingBox(boundingBox);
p_roi->WrappedUpdateWorldData();

View File

@ -221,21 +221,20 @@ MxResult LegoPathActor::VTable0x84(
right.EqualsCross(up, dir);
m_roi->UpdateTransformationRelativeToParent(matrix);
if (!m_cameraFlag || !m_userNavFlag) {
if (m_cameraFlag && m_userNavFlag) {
m_boundary->AddActor(this);
FUN_10010c30();
}
else {
p5.EqualsCross(*p_boundary->GetUnknown0x14(), p3);
p5.Unitize();
if (VTable0x80(p_p1, p_p4, p2, p5) == SUCCESS) {
if (VTable0x80(p_p1, p_p4, p2, p5) != SUCCESS) {
MxTrace("Warning: m_BADuration = %g, roi = %s\n", m_BADuration, m_roi->GetName());
m_boundary->AddActor(this);
}
else {
return FAILURE;
}
}
else {
m_boundary->AddActor(this);
FUN_10010c30();
}
m_unk0xec = m_roi->GetLocal2World();

View File

@ -151,8 +151,8 @@ LegoResult LegoROI::Read(
goto done;
}
SET3(m_unk0x80.Min(), box.GetMin());
SET3(m_unk0x80.Max(), box.GetMax());
SET3(m_bounding_box.Min(), box.GetMin());
SET3(m_bounding_box.Max(), box.GetMax());
if (p_storage->Read(&length, sizeof(LegoU32)) != SUCCESS) {
goto done;
@ -618,8 +618,8 @@ LegoU32 LegoROI::FUN_100a9410(
Mx3DPointFloat local4c(p_v1);
local58 = m_unk0x80.Min();
locala8 = m_unk0x80.Max();
local58 = m_bounding_box.Min();
locala8 = m_bounding_box.Max();
localc0[3] = local9c[3] = local168[3] = 1.0f;

View File

@ -79,7 +79,7 @@ public:
void SetComp(CompoundObject* p_comp) { comp = p_comp; }
void SetBoundingSphere(const BoundingSphere& p_sphere) { m_sphere = m_world_bounding_sphere = p_sphere; }
void SetUnknown0x80(const BoundingBox& p_unk0x80) { m_unk0x80 = p_unk0x80; }
void SetBoundingBox(const BoundingBox& p_box) { m_bounding_box = p_box; }
// SYNTHETIC: LEGO1 0x100a82b0
// LegoROI::`scalar deleting destructor'

View File

@ -74,7 +74,7 @@ public:
protected:
MxMatrix m_local2world; // 0x10
BoundingBox m_world_bounding_box; // 0x58
BoundingBox m_unk0x80; // 0x80
BoundingBox m_bounding_box; // 0x80
BoundingSphere m_world_bounding_sphere; // 0xa8
Mx3DPointFloat m_world_velocity; // 0xc0
OrientableROI* m_parentROI; // 0xd4