From 860539a81c80c2734720d67b1cec581a91e3f87f Mon Sep 17 00:00:00 2001 From: sitton76 <58642183+sitton76@users.noreply.github.com> Date: Sat, 17 May 2025 02:54:36 -0500 Subject: [PATCH] GrandPrixBallon/kart shadow --- src/engine/objects/GrandPrixBalloons.cpp | 5 +++++ src/render_player.c | 2 ++ 2 files changed, 7 insertions(+) diff --git a/src/engine/objects/GrandPrixBalloons.cpp b/src/engine/objects/GrandPrixBalloons.cpp index 819bde1c6..bf55465b6 100644 --- a/src/engine/objects/GrandPrixBalloons.cpp +++ b/src/engine/objects/GrandPrixBalloons.cpp @@ -12,6 +12,7 @@ extern "C" { #include "math_util.h" #include "math_util_2.h" #include "menus.h" +#include "port/interpolation/FrameInterpolation.h" } size_t OGrandPrixBalloons::_count = 0; @@ -105,6 +106,8 @@ void OGrandPrixBalloons::func_80053D74(s32 objectIndex, UNUSED s32 arg1, s32 ver Vtx* vtx = (Vtx*) LOAD_ASSET_RAW(common_vtx_hedgehog); + FrameInterpolation_RecordOpenChild("Balloon", TAG_ITEM_ADDR(object)); //Not working properly just yet + if (gMatrixHudCount <= MTX_HUD_POOL_SIZE_MAX) { object = &gObjectList[objectIndex]; D_80183E80[2] = (s16) (object->unk_084[6] + 0x8000); @@ -115,6 +118,8 @@ void OGrandPrixBalloons::func_80053D74(s32 objectIndex, UNUSED s32 arg1, s32 ver gSPVertex(gDisplayListHead++, (uintptr_t)&vtx[vertexIndex], 4, 0); gSPDisplayList(gDisplayListHead++, (Gfx*)common_rectangle_display); } + + FrameInterpolation_RecordCloseChild(); } void OGrandPrixBalloons::func_80074924(s32 objectIndex) { diff --git a/src/render_player.c b/src/render_player.c index 85c04f5b9..8efa7bcbe 100644 --- a/src/render_player.c +++ b/src/render_player.c @@ -1484,6 +1484,7 @@ void render_player_shadow(Player* player, s8 playerId, s8 screenId) { UNUSED Vec3f pad2; f32 var_f2; + FrameInterpolation_RecordOpenChild("Kart Shadow", TAG_ITEM_ADDR(player)); temp_t9 = (u16) (player->unk_048[screenId] + player->rotation[1] + player->unk_0C0) / 128; // << 7) & 0xFFFF; spC0 = -player->rotation[1] - player->unk_0C0; @@ -1547,6 +1548,7 @@ void render_player_shadow(Player* player, s8 playerId, s8 screenId) { gSPDisplayList(gDisplayListHead++, common_square_plain_render); gSPTexture(gDisplayListHead++, 1, 1, 0, G_TX_RENDERTILE, G_OFF); + FrameInterpolation_RecordCloseChild(); } void render_player_shadow_credits(Player* player, s8 playerId, s8 arg2) {