diff options
| author | MegaMech <MegaMech@users.noreply.github.com> | 2026-02-05 12:44:26 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-02-05 12:44:26 -0700 |
| commit | c902e200ab1b465f557b2e35c1cdc1a06a74eba8 (patch) | |
| tree | fdab4335d44b98edc0ec6712e1fe5a2ba425f96c /src/engine/objects/Hedgehog.cpp | |
| parent | 816c03c88b41048f6cb16d411612d61b55c39016 (diff) | |
Fix Interp Issues (#641)
* Update Seagull.cpp
* Update Seagull.h
* Update Thwomp.cpp
* Update Thwomp.h
* Update Crab.cpp
* Update render.inc.c
* Update Mole.cpp
* Update Mole.h
* Update Mole.cpp
* Update Thwomp.cpp
* Update Thwomp.cpp
* Update Thwomp.cpp
* Update HotAirBalloon.cpp
* Update HotAirBalloon.cpp
* Update ChainChomp.cpp
* Update Hedgehog.h
* Update Hedgehog.cpp
* Update Snowman.cpp
* Update Flagpole.h
* Update Flagpole.cpp
* Update Flagpole.cpp
Diffstat (limited to 'src/engine/objects/Hedgehog.cpp')
| -rw-r--r-- | src/engine/objects/Hedgehog.cpp | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/src/engine/objects/Hedgehog.cpp b/src/engine/objects/Hedgehog.cpp index a028fde36..d2ffb95af 100644 --- a/src/engine/objects/Hedgehog.cpp +++ b/src/engine/objects/Hedgehog.cpp @@ -81,9 +81,10 @@ void OHedgehog::func_800555BC(s32 objectIndex, s32 cameraId) { if (gObjectList[objectIndex].state >= 2) { camera = &camera1[cameraId]; - OHedgehog::func_8004A870(objectIndex, 0.7f); + OHedgehog::func_8004A870(cameraId, objectIndex, 0.7f); gObjectList[objectIndex].orientation[1] = func_800418AC(gObjectList[objectIndex].pos[0], gObjectList[objectIndex].pos[2], camera->pos); + FrameInterpolation_RecordOpenChild("hedgehog2", TAG_OBJECT((_idx << 5) | cameraId)); rsp_set_matrix_transformation(gObjectList[objectIndex].pos, gObjectList[objectIndex].orientation, gObjectList[objectIndex].sizeScaling); gSPDisplayList(gDisplayListHead++, (Gfx*) D_0D007D78); auto tlut = (u8*) gObjectList[objectIndex].activeTLUT; @@ -96,10 +97,11 @@ void OHedgehog::func_800555BC(s32 objectIndex, s32 cameraId) { gSPVertex(gDisplayListHead++, (uintptr_t) vtx, 4, 0); gSPDisplayList(gDisplayListHead++, (Gfx*) common_rectangle_display); gSPTexture(gDisplayListHead++, 1, 1, 0, G_TX_RENDERTILE, G_OFF); + FrameInterpolation_RecordCloseChild(); } } -void OHedgehog::func_8004A870(s32 objectIndex, f32 arg1) { +void OHedgehog::func_8004A870(s32 cameraId, s32 objectIndex, f32 arg1) { Mat4 mtx; Object* object; @@ -110,9 +112,7 @@ void OHedgehog::func_8004A870(s32 objectIndex, f32 arg1) { D_80183E50[1] = object->surfaceHeight + 0.8; D_80183E50[2] = object->pos[2]; - // @port: Tag the transform. - FrameInterpolation_RecordOpenChild("hedgehog", (uintptr_t) &gObjectList[objectIndex]); - + FrameInterpolation_RecordOpenChild("hedgehog", (uintptr_t) (_idx << 5) | cameraId); set_transform_matrix(mtx, object->unk_01C, D_80183E50, 0U, arg1); // convert_to_fixed_point_matrix(&gGfxPool->mtxHud[gMatrixHudCount], mtx); // gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxHud[gMatrixHudCount++]), @@ -121,7 +121,6 @@ void OHedgehog::func_8004A870(s32 objectIndex, f32 arg1) { AddHudMatrix(mtx, G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); gSPDisplayList(gDisplayListHead++, (Gfx*) D_0D007B98); - // @port Pop the transform id. FrameInterpolation_RecordCloseChild(); } } @@ -248,4 +247,4 @@ void OHedgehog::DrawEditorProperties() { if (ImGui::Button(ICON_FA_UNDO "##ResetPatrolLoc")) { PatrolEnd = FVector2D(0.0f, 0.0f); } -}
\ No newline at end of file +} |
