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/Crab.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/Crab.cpp')
| -rw-r--r-- | src/engine/objects/Crab.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/engine/objects/Crab.cpp b/src/engine/objects/Crab.cpp index c24c07221..7c3bc8d47 100644 --- a/src/engine/objects/Crab.cpp +++ b/src/engine/objects/Crab.cpp @@ -5,6 +5,7 @@ #include "CoreMath.h" #include "port/Game.h" +#include "port/interpolation/FrameInterpolation.h" extern "C" { #include "macros.h" @@ -75,9 +76,12 @@ void OCrab::Draw(s32 cameraId) { s32 objectIndex = _objectIndex; if (gObjectList[objectIndex].state >= 2) { camera = &camera1[cameraId]; + FrameInterpolation_RecordOpenChild("crab", (_idx << 5) | cameraId); func_8004A6EC(objectIndex, 0.5f); + FrameInterpolation_RecordCloseChild(); gObjectList[objectIndex].orientation[1] = func_800418AC(gObjectList[objectIndex].pos[0], gObjectList[objectIndex].pos[2], camera->pos); + FrameInterpolation_RecordOpenChild("crab2", (_idx << 5) | cameraId); rsp_set_matrix_transformation(gObjectList[objectIndex].pos, gObjectList[objectIndex].orientation, gObjectList[objectIndex].sizeScaling); gSPDisplayList(gDisplayListHead++, (Gfx*) D_0D007D78); @@ -86,6 +90,7 @@ void OCrab::Draw(s32 cameraId) { gSPVertex(gDisplayListHead++, (uintptr_t) common_vtx_crab, 4, 0); gSPDisplayList(gDisplayListHead++, (Gfx*) common_rectangle_display); gSPTexture(gDisplayListHead++, 1, 1, 0, G_TX_RENDERTILE, G_OFF); + FrameInterpolation_RecordCloseChild(); } } @@ -99,9 +104,12 @@ void OCrab::DrawModel(s32 cameraId) { if (gObjectList[objectIndex].state >= 2) { camera = &camera1[cameraId]; + FrameInterpolation_RecordOpenChild("crab3", (_idx << 5) | cameraId); func_8004A6EC(objectIndex, 0.5f); + FrameInterpolation_RecordCloseChild(); gObjectList[objectIndex].orientation[1] = func_800418AC(gObjectList[objectIndex].pos[0], gObjectList[objectIndex].pos[2], camera->pos); + FrameInterpolation_RecordOpenChild("crab4", (_idx << 5) | cameraId); rsp_set_matrix_transformation(gObjectList[objectIndex].pos, gObjectList[objectIndex].orientation, gObjectList[objectIndex].sizeScaling); gSPDisplayList(gDisplayListHead++, (Gfx*) D_0D007D78); @@ -110,6 +118,7 @@ void OCrab::DrawModel(s32 cameraId) { gSPVertex(gDisplayListHead++, (uintptr_t) common_vtx_crab, 4, 0); gSPDisplayList(gDisplayListHead++, (Gfx*) common_rectangle_display); gSPTexture(gDisplayListHead++, 1, 1, 0, G_TX_RENDERTILE, G_OFF); + FrameInterpolation_RecordCloseChild(); } } } |
