mirror of
https://github.com/isledecomp/isle.git
synced 2025-10-23 00:14:22 +00:00
Implement LegoCarBuildAnimPresenter::StreamingTickle()
(#1109)
* Implement LegoCarBuildAnimPresenter::StreamingTickle and dependents * Fix naming issue * Address review comment --------- Co-authored-by: jonschz <jonschz@users.noreply.github.com>
This commit is contained in:
@@ -97,6 +97,7 @@ double Lego3DManager::Render(double p_und)
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x100ab4d0
|
||||
// FUNCTION: BETA10 0x1017baeb
|
||||
int Lego3DManager::SetFrustrum(float p_fov, float p_front, float p_back)
|
||||
{
|
||||
m_pLego3DView->GetView()->SetFrustrum(p_front, p_back, p_fov);
|
||||
|
@@ -119,6 +119,7 @@ BOOL Lego3DView::SetPointOfView(ViewROI& rROI)
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x100ab210
|
||||
// FUNCTION: BETA10 0x1017d230
|
||||
BOOL Lego3DView::Moved(ViewROI& rROI)
|
||||
{
|
||||
assert(m_pViewManager);
|
||||
|
@@ -148,7 +148,9 @@ public:
|
||||
LegoResult CreateLocalTransform(LegoFloat p_time, Matrix4& p_matrix);
|
||||
LegoBool FUN_100a0990(LegoFloat p_time);
|
||||
|
||||
// FUNCTION: BETA10 0x100595d0
|
||||
const LegoChar* GetName() { return m_name; }
|
||||
|
||||
LegoU32 GetTranslationIndex() { return m_translationIndex; }
|
||||
LegoU32 GetRotationIndex() { return m_rotationIndex; }
|
||||
LegoU32 GetScaleIndex() { return m_scaleIndex; }
|
||||
@@ -164,6 +166,8 @@ public:
|
||||
void SetScaleIndex(LegoU32 p_scaleIndex) { m_scaleIndex = p_scaleIndex; }
|
||||
void SetMorphIndex(LegoU32 p_morphIndex) { m_morphIndex = p_morphIndex; }
|
||||
void SetUnknown0x20(LegoU16 p_unk0x20) { m_unk0x20 = p_unk0x20; }
|
||||
|
||||
// FUNCTION: BETA10 0x1005f2e0
|
||||
void SetUnknown0x22(LegoU16 p_unk0x22) { m_unk0x22 = p_unk0x22; }
|
||||
|
||||
LegoResult CreateLocalTransform(LegoTime p_time, Matrix4& p_matrix)
|
||||
|
@@ -32,14 +32,21 @@ class LegoTreeNode {
|
||||
public:
|
||||
LegoTreeNode();
|
||||
virtual ~LegoTreeNode();
|
||||
|
||||
// FUNCTION: BETA10 0x100595a0
|
||||
LegoTreeNodeData* GetData() { return m_data; }
|
||||
|
||||
void SetData(LegoTreeNodeData* p_data) { m_data = p_data; }
|
||||
|
||||
// FUNCTION: BETA10 0x10012150
|
||||
LegoU32 GetNumChildren() { return m_numChildren; }
|
||||
|
||||
// FUNCTION: BETA10 0x10073370
|
||||
void SetNumChildren(LegoU32 p_numChildren) { m_numChildren = p_numChildren; }
|
||||
|
||||
// FUNCTION: BETA10 0x10012180
|
||||
LegoTreeNode* GetChild(LegoU32 p_i) { return m_children[p_i]; }
|
||||
|
||||
void SetChild(LegoU32 p_i, LegoTreeNode* p_child) { m_children[p_i] = p_child; }
|
||||
|
||||
// FUNCTION: BETA10 0x100733a0
|
||||
|
@@ -341,6 +341,7 @@ LegoResult LegoROI::FUN_100a8cb0(LegoAnimNodeData* p_data, LegoTime p_time, Matr
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x100a8ce0
|
||||
// FUNCTION: BETA10 0x1018a815
|
||||
LegoROI* LegoROI::FindChildROI(const LegoChar* p_name, LegoROI* p_roi)
|
||||
{
|
||||
CompoundObject::iterator it;
|
||||
@@ -551,6 +552,18 @@ LegoResult LegoROI::GetTexture(LegoTextureInfo*& p_textureInfo)
|
||||
return FAILURE;
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x100a9350
|
||||
// FUNCTION: BETA10 0x1018b25c
|
||||
LegoResult LegoROI::FUN_100a9350(const LegoChar* p_color)
|
||||
{
|
||||
MxFloat red, green, blue, alpha;
|
||||
if (ColorAliasLookup(p_color, red, green, blue, alpha)) {
|
||||
return FUN_100a9170(red, green, blue, alpha);
|
||||
}
|
||||
|
||||
return SUCCESS;
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x100a9410
|
||||
// FUNCTION: BETA10 0x1018b324
|
||||
LegoU32 LegoROI::FUN_100a9410(
|
||||
@@ -778,6 +791,13 @@ void LegoROI::SetName(const LegoChar* p_name)
|
||||
}
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x100a9dd0
|
||||
// STUB: BETA10 0x1018bfdb
|
||||
void LegoROI::FUN_100a9dd0()
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x100a9e10
|
||||
void LegoROI::SetDisplayBB(int p_displayBB)
|
||||
{
|
||||
|
@@ -38,12 +38,14 @@ public:
|
||||
LegoResult FUN_100a9170(LegoFloat p_red, LegoFloat p_green, LegoFloat p_blue, LegoFloat p_alpha);
|
||||
LegoResult FUN_100a9210(LegoTextureInfo* p_textureInfo);
|
||||
LegoResult GetTexture(LegoTextureInfo*& p_textureInfo);
|
||||
LegoResult FUN_100a9350(const LegoChar* p_color);
|
||||
LegoU32 FUN_100a9410(Vector3& p_v1, Vector3& p_v2, float p_f1, float p_f2, Vector3& p_v3, LegoBool p_collideBox);
|
||||
void SetName(const LegoChar* p_name);
|
||||
|
||||
float IntrinsicImportance() const override; // vtable+0x04
|
||||
void UpdateWorldBoundingVolumes() override; // vtable+0x18
|
||||
|
||||
void FUN_100a9dd0();
|
||||
void SetDisplayBB(int p_displayBB);
|
||||
|
||||
static LegoResult FUN_100a8cb0(LegoAnimNodeData* p_data, LegoTime p_time, Matrix4& p_matrix);
|
||||
|
Reference in New Issue
Block a user