diff --git a/src/actors/fake_item_box/render.inc.c b/src/actors/fake_item_box/render.inc.c index ac1621b4f..3292b64e2 100644 --- a/src/actors/fake_item_box/render.inc.c +++ b/src/actors/fake_item_box/render.inc.c @@ -26,7 +26,7 @@ void render_actor_fake_item_box(Camera* camera, struct FakeItemBox* fakeItemBox) f32 someMultiplier; // @port: Tag the transform. - FrameInterpolation_RecordOpenChild(TAG_ITEM_ADDR(fakeItemBox), 0); + FrameInterpolation_RecordOpenChild("Fake Item Box", TAG_ITEM_ADDR(fakeItemBox)); if (is_within_render_distance(camera->pos, fakeItemBox->pos, camera->rot[1], 2500.0f, gCameraZoom[camera - camera1], 1000000.0f) < 0 && diff --git a/src/actors/item_box/render.inc.c b/src/actors/item_box/render.inc.c index 8d6bdea19..12cc17497 100644 --- a/src/actors/item_box/render.inc.c +++ b/src/actors/item_box/render.inc.c @@ -28,7 +28,7 @@ void render_actor_item_box(Camera* camera, struct ItemBox* item_box) { f32 someMultiplier; // @port: Tag the transform. - FrameInterpolation_RecordOpenChild(TAG_ITEM_ADDR(item_box), 0); + FrameInterpolation_RecordOpenChild("ItemBox", TAG_ITEM_ADDR(item_box)); temp_f0 = is_within_render_distance(camera->pos, item_box->pos, camera->rot[1], 0.0f, gCameraZoom[camera - camera1], 4000000.0f); diff --git a/src/engine/Matrix.cpp b/src/engine/Matrix.cpp index 13f768ec2..e46804ad5 100644 --- a/src/engine/Matrix.cpp +++ b/src/engine/Matrix.cpp @@ -13,7 +13,6 @@ void AddMatrix(std::vector& stack, Mat4 mtx, s32 flags) { // Push a new matrix to the stack stack.emplace_back(); - FrameInterpolation_RecordMatrixMtxFToMtx((MtxF*)mtx, &stack.back()); // Convert to a fixed-point matrix FrameInterpolation_RecordMatrixMtxFToMtx((MtxF*)mtx, &stack.back()); guMtxF2L(mtx, &stack.back()); diff --git a/src/render_player.c b/src/render_player.c index 9267706db..85c04f5b9 100644 --- a/src/render_player.c +++ b/src/render_player.c @@ -32,6 +32,7 @@ #include #include "port/Game.h" #include "engine/Matrix.h" +#include "port/interpolation/FrameInterpolation.h" s8 gRenderingFramebufferByPlayer[] = { 0x00, 0x02, 0x00, 0x01, 0x00, 0x01, 0x00, 0x02 }; @@ -722,7 +723,7 @@ const char** wheelPtr[] = { donkeykong_kart_wheels, wario_kart_wheels, peach_kart_wheels, bowser_kart_wheels, }; -s32 D_800DDE74[] = { 96, 128, 192, 256, 288, 384, 512, 544, 576, 0, 0}; +s32 D_800DDE74[] = { 96, 128, 192, 256, 288, 384, 512, 544, 576, 0, 0 }; void render_players_on_screen_two(void) { gPlayersToRenderCount = 0; @@ -1616,9 +1617,6 @@ void render_kart(Player* player, s8 playerId, s8 screenId, s8 arg3) { s16 temp_v1; s16 thing; - FrameInterpolation_RecordMatrixPush(mtx); - - if (player->unk_044 & 0x2000) { sp14C[0] = 0; sp14C[1] = player->unk_048[screenId]; @@ -1674,6 +1672,9 @@ void render_kart(Player* player, s8 playerId, s8 screenId, s8 arg3) { mtxf_scale2(mtx, gCharacterSize[player->characterId] * player->size); // convert_to_fixed_point_matrix(&gGfxPool->mtxKart[playerId + (screenId * 8)], mtx); + // @port: Tag the transform. + FrameInterpolation_RecordOpenChild("Player", playerId | screenId << 8); + if ((player->effects & BOO_EFFECT) == BOO_EFFECT) { if (screenId == playerId) { AddKartMatrix(mtx, G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); @@ -1747,7 +1748,8 @@ void render_kart(Player* player, s8 playerId, s8 screenId, s8 arg3) { gSPTexture(gDisplayListHead++, 1, 1, 0, G_TX_RENDERTILE, G_OFF); gDPSetAlphaCompare(gDisplayListHead++, G_AC_NONE); - FrameInterpolation_RecordMatrixPop(mtx); + // @port Pop the transform id. + FrameInterpolation_RecordCloseChild(); } void render_ghost(Player* player, s8 playerId, s8 screenId, s8 arg3) {