diff options
| author | MegaMech <MegaMech@users.noreply.github.com> | 2026-02-04 17:18:33 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-02-04 17:18:33 -0700 |
| commit | ddd47126ecc19841cd7fb7adb89767475dbcd707 (patch) | |
| tree | f7c753b1f2d48ce6e49460a08eefb7fdc561e0e8 /src/engine | |
| parent | a59dcc1e75a525ab825b237077ba2a06350b0029 (diff) | |
Maybe fix some interpolation (#637)
* Update render_player.c
* Refactor FrameInterpolation_RecordOpenChild calls
* Update GrandPrixBalloons.cpp
* Modify func_80053D74 to include an additional parameter
Diffstat (limited to 'src/engine')
| -rw-r--r-- | src/engine/objects/GrandPrixBalloons.cpp | 10 | ||||
| -rw-r--r-- | src/engine/objects/GrandPrixBalloons.h | 2 |
2 files changed, 5 insertions, 7 deletions
diff --git a/src/engine/objects/GrandPrixBalloons.cpp b/src/engine/objects/GrandPrixBalloons.cpp index 2180f85c0..91b41bc5f 100644 --- a/src/engine/objects/GrandPrixBalloons.cpp +++ b/src/engine/objects/GrandPrixBalloons.cpp @@ -92,19 +92,19 @@ void OGrandPrixBalloons::Draw(s32 cameraId) { for (var_s1 = 0; var_s1 < _numBalloons; var_s1++) { objectIndex = gObjectParticle3[var_s1]; if ((objectIndex != NULL_OBJECT_ID) && (gObjectList[objectIndex].state >= 2)) { - OGrandPrixBalloons::func_80053D74(objectIndex, cameraId, 0); + OGrandPrixBalloons::func_80053D74(objectIndex, cameraId, 0, var_s1); } } rsp_load_texture((uint8_t*) gTextureBalloon2, 64, 32); for (var_s1 = 0; var_s1 < _numBalloons; var_s1++) { objectIndex = gObjectParticle3[var_s1]; if ((objectIndex != NULL_OBJECT_ID) && (gObjectList[objectIndex].state >= 2)) { - OGrandPrixBalloons::func_80053D74(objectIndex, cameraId, 4); + OGrandPrixBalloons::func_80053D74(objectIndex, cameraId, 4, var_s1); } } } -void OGrandPrixBalloons::func_80053D74(s32 objectIndex, UNUSED s32 arg1, s32 vertexIndex) { +void OGrandPrixBalloons::func_80053D74(s32 objectIndex, UNUSED s32 arg1, s32 vertexIndex, s32 index) { Object* object; Vtx* vtx = (Vtx*) LOAD_ASSET_RAW(common_vtx_hedgehog); @@ -113,9 +113,7 @@ void OGrandPrixBalloons::func_80053D74(s32 objectIndex, UNUSED s32 arg1, s32 ver if (gMatrixHudCount <= MTX_HUD_POOL_SIZE_MAX) { object = &gObjectList[objectIndex]; - // @port: Tag the transform. - FrameInterpolation_RecordOpenChild("Balloon", - TAG_ITEM_ADDR((objectIndex << 32) + i++)); // Not working properly just yet + FrameInterpolation_RecordOpenChild("Balloon", TAG_ITEM_ADDR((objectIndex << 7 | index))); D_80183E80[2] = (s16) (object->unk_084[6] + 0x8000); rsp_set_matrix_transformation(object->pos, (u16*) D_80183E80, object->sizeScaling); diff --git a/src/engine/objects/GrandPrixBalloons.h b/src/engine/objects/GrandPrixBalloons.h index f807fb350..3eb4a1dfa 100644 --- a/src/engine/objects/GrandPrixBalloons.h +++ b/src/engine/objects/GrandPrixBalloons.h @@ -39,7 +39,7 @@ public: virtual void Tick() override; virtual void Draw(s32 cameraId) override; - void func_80053D74(s32 objectIndex, UNUSED s32 arg1, s32 vertexIndex); + void func_80053D74(s32 objectIndex, UNUSED s32 arg1, s32 vertexIndex, s32 index); void func_80074924(s32 objectIndex); void func_80074D94(s32 objectIndex); |
