From 132357d9fb50d7962518e10b22db358c85d87ba5 Mon Sep 17 00:00:00 2001 From: MegaMech Date: Fri, 6 Mar 2026 20:10:07 -0700 Subject: Big Interpolation Overhaul (#674) * Fix FI * FI statue * Intepr fixes * Improve * More interp * Fix compile * More interp * Fix text --- src/engine/tracks/CustomTrack.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/engine/tracks/CustomTrack.cpp') diff --git a/src/engine/tracks/CustomTrack.cpp b/src/engine/tracks/CustomTrack.cpp index 9e720c4c9..52f9f9672 100644 --- a/src/engine/tracks/CustomTrack.cpp +++ b/src/engine/tracks/CustomTrack.cpp @@ -290,7 +290,7 @@ void CustomTrack::DrawTransparency(ScreenContext* screen, uint16_t pathCounter, for (TrackSections& item : mTranslucentItems) { Mat4 matrix; FVector pos = {item.location[0], item.location[1], item.location[2]}; - FrameInterpolation_RecordOpenChild("translucent_obj", item.crc); + FrameInterpolation_RecordOpenChild("translucent_obj", (item.crc << 4) | screen - gScreenContexts); ApplyMatrixTransformations(matrix, pos, IRotator(0, 0, 0), FVector(1, 1, 1)); AddObjectMatrix(matrix, G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); gSPDisplayList(gDisplayListHead++, (Gfx*) ResourceGetDataByCrc(item.crc)); @@ -301,9 +301,11 @@ void CustomTrack::DrawTransparency(ScreenContext* screen, uint16_t pathCounter, for (TrackSections& item : mTranslucentNoZBufferItems) { Mat4 matrix; FVector pos = {item.location[0], item.location[1], item.location[2]}; + FrameInterpolation_RecordOpenChild("translucent_no_z", (item.crc << 4) | screen - gScreenContexts); ApplyMatrixTransformations(matrix, pos, IRotator(0, 0, 0), FVector(1, 1, 1)); AddObjectMatrix(matrix, G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); gSPDisplayList(gDisplayListHead++, (Gfx*) ResourceGetDataByCrc(item.crc)); + FrameInterpolation_RecordCloseChild(); } gSPSetGeometryMode(gDisplayListHead++, G_ZBUFFER); } -- cgit v1.2.3