diff options
| author | Sonic Dreamcaster <alejandro.asenjo88@gmail.com> | 2024-11-20 19:22:25 -0300 |
|---|---|---|
| committer | Sonic Dreamcaster <alejandro.asenjo88@gmail.com> | 2024-11-20 19:22:25 -0300 |
| commit | 3dda020f3abe4ce8cb4e5977d29700cd163d9c13 (patch) | |
| tree | 6fb1b059e5bf7567141d90b12612966b381e5190 /src/engine | |
| parent | bc4e485d44f698359619158c46c3a1f9e193b4ad (diff) | |
Point filtering fix
Diffstat (limited to 'src/engine')
| -rw-r--r-- | src/engine/fox_display.c | 4 | ||||
| -rw-r--r-- | src/engine/fox_game.c | 4 | ||||
| -rw-r--r-- | src/engine/fox_hud.c | 102 | ||||
| -rw-r--r-- | src/engine/fox_radio.c | 6 | ||||
| -rw-r--r-- | src/engine/fox_rcp_setup.c | 101 |
5 files changed, 161 insertions, 56 deletions
diff --git a/src/engine/fox_display.c b/src/engine/fox_display.c index b3bc29f5..8a255b01 100644 --- a/src/engine/fox_display.c +++ b/src/engine/fox_display.c @@ -139,7 +139,7 @@ void Display_DrawHelpAlert(void) { switch (sp7C) { case false: - RCP_SetupDL(&gMasterDisp, SETUPDL_76); + RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 0, 255); if (sp78 < 0.0f) { Graphics_DisplaySmallText(43 - 19, 106, 1.0f, 1.0f, "HELP!!"); @@ -149,7 +149,7 @@ void Display_DrawHelpAlert(void) { break; case true: - RCP_SetupDL(&gMasterDisp, SETUPDL_76); + RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 0, 255); Graphics_DisplaySmallText(43 - 19, 106, 1.0f, 1.0f, "HELP!!"); Graphics_DisplaySmallText(SCREEN_WIDTH - 43 - 19, 106, 1.0f, 1.0f, "HELP!!"); diff --git a/src/engine/fox_game.c b/src/engine/fox_game.c index 5a08d025..7cb3739a 100644 --- a/src/engine/fox_game.c +++ b/src/engine/fox_game.c @@ -398,7 +398,7 @@ void Game_Update(void) { break; case GSTATE_SHOW_LOGO: - RCP_SetupDL(&gMasterDisp, SETUPDL_76); + RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 255); Lib_TextureRect_IA8(&gMasterDisp, gNintendoLogo, 128, 74, 100.0f, 86.0f, 1.0f, 1.0f); gGameState++; @@ -418,7 +418,7 @@ void Game_Update(void) { Timer_CreateTask(MSEC_TO_CYCLES(1000), Timer_Increment, (s32*) &gGameState, 1); /* fallthrough */ case GSTATE_LOGO_WAIT: - RCP_SetupDL(&gMasterDisp, SETUPDL_76); + RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 255); Lib_TextureRect_IA8(&gMasterDisp, gNintendoLogo, 128, 74, 100.0f, 86.0f, 1.0f, 1.0f); break; diff --git a/src/engine/fox_hud.c b/src/engine/fox_hud.c index d27408e8..bcf1b4bc 100644 --- a/src/engine/fox_hud.c +++ b/src/engine/fox_hud.c @@ -126,7 +126,7 @@ void HUD_LivesCount1_Draw(f32 xPos, f32 yPos, s32 lifeCount) { s32 maxLives; s32 digits; - RCP_SetupDL(&gMasterDisp, SETUPDL_78); + RCP_SetupDL(&gMasterDisp, SETUPDL_78_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); player = &gPlayer[0]; @@ -154,7 +154,7 @@ void HUD_LivesCount1_Draw(f32 xPos, f32 yPos, s32 lifeCount) { xPos += 11.0f; yPos -= 1.0f; - RCP_SetupDL(&gMasterDisp, SETUPDL_76); + RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); if (lifeCount < 0) { @@ -222,9 +222,10 @@ void TextureRect_CI8_2(Gfx** gfxP, u8* texture, u16* palette, u32 tWidth, u32 tH gDPLoadTLUT((*gfxP)++, 256, 256, palette); gDPLoadTextureBlock((*gfxP)++, texture, G_IM_FMT_CI, G_IM_SIZ_8b, tWidth, tHeight, 0, G_TX_NOMIRROR, G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD); - gSPWideTextureRectangle((*gfxP)++, (s32) (xPos * 4.0f), (s32) (yPos * 4.0f), (s32) ((xPos + (xWidth * xScale)) * 4.0f), - (s32) ((yPos + (yWidth * yScale)) * 4.0f), G_TX_RENDERTILE, 0 * 32, 0 * 32, - (s32) (1 / xScale * (32 * 32)), (s32) (1 / yScale * (32 * 32))); + gSPWideTextureRectangle((*gfxP)++, (s32) (xPos * 4.0f), (s32) (yPos * 4.0f), + (s32) ((xPos + (xWidth * xScale)) * 4.0f), (s32) ((yPos + (yWidth * yScale)) * 4.0f), + G_TX_RENDERTILE, 0 * 32, 0 * 32, (s32) (1 / xScale * (32 * 32)), + (s32) (1 / yScale * (32 * 32))); } void HUD_MsgWindowBg_Draw(f32 xPos, f32 yPos, f32 xScale, f32 yScale) { @@ -303,7 +304,7 @@ void HUD_BoostGaugeCool_Draw(f32 xPos, f32 yPos, f32 xScale, f32 yScale) { } } -void HUD_MatrixTranslateCoord(f32* transX, f32* transY){ +void HUD_MatrixTranslateCoord(f32* transX, f32* transY) { *transX = OTRGetRectDimensionFromLeftEdge(*transX) - (SCREEN_WIDTH / 2.0f); *transY = (SCREEN_HEIGHT / 2.0f) - *transY; } @@ -407,7 +408,8 @@ void HUD_GoldRings_Draw(void) { Matrix_Push(&gGfxMatrix); Matrix_Translate(gGfxMatrix, D_800D1AC4[i + 1], D_800D1AD8[i + 1], -100.0f, MTXF_NEW); Matrix_RotateZ(gGfxMatrix, M_DTOR * sGoldRingsFwork[0], MTXF_APPLY); - Matrix_Scale(gGfxMatrix, sGoldRingsFwork[i + 2], sGoldRingsFwork[i + 2], sGoldRingsFwork[i + 2], MTXF_APPLY); + Matrix_Scale(gGfxMatrix, sGoldRingsFwork[i + 2], sGoldRingsFwork[i + 2], sGoldRingsFwork[i + 2], + MTXF_APPLY); Matrix_Scale(gGfxMatrix, ringScale, ringScale, ringScale, MTXF_APPLY); Matrix_SetGfxMtx(&gMasterDisp); @@ -489,7 +491,7 @@ void HUD_TeamShields_Draw(f32 xPos, f32 yPos, s32 arg2) { if ((arg2 <= 0) && (arg2 != -2) && ((gPlayState == PLAY_PAUSE) || (gShowLevelClearStatusScreen == 1) || (gLevelStartStatusScreenTimer != 0))) { - RCP_SetupDL(&gMasterDisp, SETUPDL_76); + RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 0, 255); if ((arg2 == 0) && (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_LEVEL_COMPLETE)) { Graphics_DisplaySmallText(xPos + (8.0f * xScale) + 4.0f, yPos + 2.0f, 1.0f, 1.0f, " OK "); @@ -498,7 +500,7 @@ void HUD_TeamShields_Draw(f32 xPos, f32 yPos, s32 arg2) { } } - RCP_SetupDL(&gMasterDisp, SETUPDL_76); + RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); HUD_ShieldGaugeEdgeLeft_Draw(xPos, yPos, xScale, 1.0f); HUD_ShieldGaugeEdgeRight_Draw(xPos + (7.0f * xScale) + (xScale * 6.0f) * 8.0f, yPos, 1.0f, 1.0f); @@ -604,7 +606,7 @@ void HUD_VenomTitleCard_Draw(void) { } if (i != 9) { - RCP_SetupDL(&gMasterDisp, SETUPDL_76); + RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); Lib_TextureRect_IA8(&gMasterDisp, sVenomTitleCardDLs[i], sVenomTitleCardWidths[i], 19, sVenomTitleCardWidths[i], @@ -673,7 +675,7 @@ void HUD_TitleCard_Draw(f32 x, f32 y) { break; } - RCP_SetupDL(&gMasterDisp, SETUPDL_76); + RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); if ((levelIdx != 14) && (levelIdx != 15)) { // LEVEL_KATINA || LEVEL_FORTUNA @@ -730,7 +732,7 @@ void HUD_Number_Draw(f32 xPos, f32 yPos, s32 k, f32 scale, bool skipLeadingZeroe } void HUD_MsgWindowBg_Draw2(f32 xPos, f32 yPos, f32 xScale, f32 yScale) { - RCP_SetupDL(&gMasterDisp, SETUPDL_78); + RCP_SetupDL(&gMasterDisp, SETUPDL_78_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, 60, 60, 128, 96); gDPSetAlphaDither(gMasterDisp++, G_AD_DISABLE); Lib_TextureRect_CI8(&gMasterDisp, aMsgWindowBgTex, aMsgWindowBgTLUT, 24, 17, xPos, yPos, xScale, yScale); @@ -871,7 +873,7 @@ void HUD_DrawLevelClearScreen(void) { levelIdx = HUD_GetLevelIndex(); if (levelClearState != LEVEL_CLEAR_STATE_0) { - RCP_SetupDL(&gMasterDisp, SETUPDL_76); + RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); x = 98.0f; y = 64.0f; @@ -924,9 +926,7 @@ void HUD_LivesCount2_Draw(f32 x, f32 y, s32 number) { s32 i; s32 form; - x = OTRGetDimensionFromRightEdge(x); - - RCP_SetupDL(&gMasterDisp, SETUPDL_78); + RCP_SetupDL(&gMasterDisp, SETUPDL_78_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); form = FORM_ARWING; @@ -968,6 +968,12 @@ void HUD_LivesCount2_Draw(f32 x, f32 y, s32 number) { } x2 += (2 - i) * 4; + if (gShowLevelClearStatusScreen == 0) { + x0 = OTRGetDimensionFromRightEdge(x0); + x1 = OTRGetDimensionFromRightEdge(x1); + x2 = OTRGetDimensionFromRightEdge(x2); + } + Lib_TextureRect_CI4(&gMasterDisp, sLivesCounterTexs[form], sLivesCounterTLUTs[form], 16, 16, x0, y0, 1.0f, 1.0f); Lib_TextureRect_CI4(&gMasterDisp, aXTex, aXTLUT, 16, 7, x1, y1, 1.0f, 1.0f); @@ -1009,11 +1015,11 @@ void HUD_TeammateStatus_Draw(void) { for (j = 0; j < 3; j++) { HUD_MsgWindowBg_Draw2(x[j][0] - 6.0f, y[j][1] - 1.0f, 2.4f, 0.7f); - RCP_SetupDL(&gMasterDisp, SETUPDL_76); + RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); Lib_TextureRect_IA8(&gMasterDisp, sText[j], sTextWidth[j], sTextHeght[j], x[j][1], y[j][1], 1.0f, 1.0f); - RCP_SetupDL(&gMasterDisp, SETUPDL_76); + RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT); shield = gTeamShields[3 - j]; if (shield <= 0) { @@ -1220,10 +1226,10 @@ void HUD_LevelClearStatusScreen_Draw(void) { } x4 += (4 - i) * 8; - RCP_SetupDL(&gMasterDisp, SETUPDL_76); + RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, 90, 160, 200, 255); - HUD_Number_Draw(24.0f, 30.0f + 3.0f, D_801617C0[5], 1.0f, false, 999); + HUD_Number_Draw(OTRGetDimensionFromLeftEdge(24.0f), 30.0f + 3.0f, D_801617C0[5], 1.0f, false, 999); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); Lib_TextureRect_IA8(&gMasterDisp, aTextEnemiesDown, 64, 25, x0, y0 + 4.0f, 1.0f, 1.0f); @@ -1238,7 +1244,7 @@ void HUD_LevelClearStatusScreen_Draw(void) { HUD_LivesCount2_Draw(232.0f, 90.0f, D_801617C0[3]); } - RCP_SetupDL(&gMasterDisp, SETUPDL_76); + RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); Lib_TextureRect_IA8(&gMasterDisp, aTextStatusOfTeam, 120, 12, x6 - 8.0f, y6 + 10.0f, 1.0f, 1.0f); @@ -1652,7 +1658,7 @@ void HUD_PauseScreen_Update(void) { break; } - RCP_SetupDL(&gMasterDisp, SETUPDL_76); + RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); Lib_TextureRect_IA8(&gMasterDisp, sLevelTitleCard[j].titleCardTex, sLevelTitleCard[j].titleCardWidth, @@ -1660,7 +1666,7 @@ void HUD_PauseScreen_Update(void) { HUD_MsgWindowBg_Draw2(x1 - 10.0f, y0 - 4.0f, 4.7f, 2.8f); - RCP_SetupDL(&gMasterDisp, SETUPDL_76); + RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT); if (sPauseScreenIwork[1] == 0) { temp = (sPauseScreenTimer[0] % 20); @@ -2206,7 +2212,7 @@ s32 ActorMissileSeek_ModeCheck(ActorMissileSeekMode mode) { void HUD_RadioCharacterName_Draw(void) { if (gGameState == GSTATE_PLAY) { - RCP_SetupDL(&gMasterDisp, SETUPDL_76); + RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 0, 255); switch ((s32) gRadioMsgRadioId) { @@ -2297,7 +2303,7 @@ void HUD_IncomingMsg_Draw(void) { f32 xPos = 142.0f; f32 yPos = 18.0f; - RCP_SetupDL(&gMasterDisp, SETUPDL_78); + RCP_SetupDL(&gMasterDisp, SETUPDL_78_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); switch (D_80161790 / 2) { @@ -2392,14 +2398,12 @@ void HUD_PlayerShieldGauge_Update(void) { } void HUD_PlayerShieldGauge_Draw(f32 x, f32 y) { - // gEXSetRectAlign(gMasterDisp++, G_EX_ORIGIN_LEFT, G_EX_ORIGIN_LEFT, 0, 0, 0, 0); - x = OTRGetDimensionFromLeftEdge(x); - RCP_SetupDL(&gMasterDisp, SETUPDL_75); + RCP_SetupDL(&gMasterDisp, SETUPDL_75_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); HUD_ShieldGaugeBars_Draw(x + 8.0f, y + 2.0f, D_801617A8, 1.0f, D_801617AC); - RCP_SetupDL(&gMasterDisp, SETUPDL_76); + RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, D_800D1EB4, D_800D1EB8, D_800D1EBC, 255); HUD_ShieldGaugeEdgeLeft_Draw(x, y, 1.0f, 1.0f); HUD_ShieldGaugeEdgeRight_Draw(x + 7.0f + (D_801617A8 * 6.0f * 8.0f), y, 1.0f, 1.0f); @@ -2881,7 +2885,7 @@ void HUD_KillCountStars_Update(void) { j = gVsKills[gPlayerNum][i]; - RCP_SetupDL(&gMasterDisp, SETUPDL_77); + RCP_SetupDL(&gMasterDisp, SETUPDL_77_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); gDPSetEnvColor(gMasterDisp++, r[j], g[j], b[j], 0); @@ -2916,7 +2920,7 @@ void HUD_VsModePortrait_Draw(void) { f32 faceXpos[] = { 113.0f, 273.0f, 113.0f, 273.0f }; f32 faceYpos[] = { 79.0f, 79.0f, 199.0f, 199.0f }; - RCP_SetupDL(&gMasterDisp, SETUPDL_76); + RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); HUD_VsModePortraitTex_Draw(faceXpos[gPlayerNum], faceYpos[gPlayerNum], 0.54f, gPlayerNum); } @@ -2926,12 +2930,12 @@ void HUD_VS_ShieldGauge_Draw(void) { f32 D_800D20F8[] = { 78.0f, 78.0f, 198.0f, 198.0f }; Math_SmoothStepToF(&D_800D19E0[gPlayerNum], gPlayer[gPlayerNum].shields * (1.0f / 255.0f), 0.3f, 10.0f, 0.01f); - RCP_SetupDL(&gMasterDisp, SETUPDL_78); + RCP_SetupDL(&gMasterDisp, SETUPDL_78_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); HUD_VS_ShieldGaugeTex_Draw(D_800D20E8[gPlayerNum] + 3.0f, D_800D20F8[gPlayerNum] + 18.0f, 1.0f, 1.0f, D_800D19E0[gPlayerNum]); - RCP_SetupDL(&gMasterDisp, SETUPDL_76); + RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); @@ -2996,7 +3000,7 @@ void HUD_BoostGauge_Draw(f32 xPos, f32 yPos) { temp_t9 = D_800D19AC[playerNum]; - RCP_SetupDL(&gMasterDisp, SETUPDL_78); + RCP_SetupDL(&gMasterDisp, SETUPDL_78_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, temp_t9, temp_t9, temp_t9, 255); @@ -3008,7 +3012,7 @@ void HUD_BoostGauge_Draw(f32 xPos, f32 yPos) { HUD_BoostGaugeOverheat_Draw(boostGaugeXpos[playerNum] + temp + 1.0f, boostGaugeYpos[playerNum] + sp60, temp_fs0, 1.0f); } - RCP_SetupDL(&gMasterDisp, SETUPDL_76); + RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); HUD_BoostGaugeFrame_Draw(boostGaugeXpos[playerNum], boostGaugeYpos[playerNum], 1.0f, 1.0f); } @@ -3020,7 +3024,7 @@ void HUD_VS_PlayerNumber_Draw(void) { s32 playerNumberG[] = { 242, 30, 179, 30 }; s32 playerNumberB[] = { 12, 0, 67, 255 }; - RCP_SetupDL(&gMasterDisp, SETUPDL_78); + RCP_SetupDL(&gMasterDisp, SETUPDL_78_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, playerNumberR[gPlayerNum], playerNumberG[gPlayerNum], playerNumberB[gPlayerNum], 255); Graphics_DisplayHUDNumber(playerNumberXpos[gPlayerNum], playerNumberYpos[gPlayerNum], gPlayerNum + 1); @@ -3050,7 +3054,7 @@ void HUD_VS_BombCount_Draw(void) { if (((sVsBombCountFlashTimer[gPlayerNum] & 2) != 0) || ((sVsBombCountFlashTimer[gPlayerNum] == 0) && (gBombCount[gPlayerNum] != 0))) { - RCP_SetupDL_78(); + gSPDisplayList(gMasterDisp++, gRcpSetupDLs[SETUPDL_78_POINT]); if (gBombCount[gPlayerNum] >= 2) { if (Math_SmoothStepToF(&D_800D21A4, D_800D21A0, 0.4f, 100.0f, 0.1f) == 0.0f) { if (D_800D21A0 == 255.0f) { @@ -3082,13 +3086,13 @@ void HUD_VS_DrawHUD(void) { } void HUD_VS_X_Draw(f32 xPos, f32 yPos, s32 r, s32 g, s32 b) { - RCP_SetupDL_78(); + gSPDisplayList(gMasterDisp++, gRcpSetupDLs[SETUPDL_78_POINT]); gDPSetPrimColor(gMasterDisp++, 0, 0, r, g, b, D_hud_80161708); Lib_TextureRect_CI4(&gMasterDisp, aXTex, aXTLUT, 16, 7, xPos, yPos, 1.0f, 1.0f); } void HUD_VS_LivesCount_Draw(f32 xPos, f32 yPos, s32 number, s32 r, s32 g, s32 b) { - RCP_SetupDL_78(); + gSPDisplayList(gMasterDisp++, gRcpSetupDLs[SETUPDL_78_POINT]); gDPSetPrimColor(gMasterDisp++, 0, 0, r, g, b, D_hud_80161708); if (number >= 10) { @@ -3127,12 +3131,12 @@ void HUD_DrawBossHealth(void) { temp2 = OTRGetDimensionFromLeftEdge(temp2); temp4 = OTRGetDimensionFromLeftEdge(temp4); - RCP_SetupDL(&gMasterDisp, SETUPDL_78); + RCP_SetupDL(&gMasterDisp, SETUPDL_78_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); Lib_TextureRect_CI4(&gMasterDisp, D_1011A40, D_1011AB0, 32, 7, temp2, temp3, 1.0f, 1.0f); f32 border = sp3C; border = OTRGetDimensionFromLeftEdge(border); - RCP_SetupDL(&gMasterDisp, SETUPDL_76); + RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT); Lib_TextureRect_IA8(&gMasterDisp, D_1002040, 40, 12, border, temp1, 1.0f, 1.0f); if (sp3C >= 25.0f) { @@ -3140,12 +3144,12 @@ void HUD_DrawBossHealth(void) { } if ((D_801616C4 >= 0.1f) && (sp3C >= 25.0f)) { - RCP_SetupDL(&gMasterDisp, SETUPDL_78); + RCP_SetupDL(&gMasterDisp, SETUPDL_78_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); Lib_TextureRect_CI8(&gMasterDisp, D_10129C0, D_1013090, 16, 109, temp4, temp5, 1.0f, D_801616C4); } - RCP_SetupDL(&gMasterDisp, SETUPDL_76); + RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, 0, 0, 0, 255); if (D_801616BC > 0.0f) { @@ -3196,12 +3200,12 @@ void HUD_DisplayCountdown(f32 xPos, f32 yPos, s32* countdown, f32 scale) { } if ((i % 2) != 0) { - RCP_SetupDL_78(); + gSPDisplayList(gMasterDisp++, gRcpSetupDLs[SETUPDL_78_POINT]); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); Lib_TextureRect_CI4(&gMasterDisp, D_1011E80, D_1011EC0, 16, 8, (var_fs0 * scale) + xPos, yPos, scale, scale); } else { - RCP_SetupDL_76(); + gSPDisplayList(gMasterDisp++, gRcpSetupDLs[SETUPDL_76_POINT]); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 0, 255); HUD_DisplaySmallNumber((var_fs0 * scale) + xPos, yPos, scale, var_s2); var_fs0 += 9.0f; @@ -3344,7 +3348,7 @@ void HUD_Hitpoints_Update(f32 xPos, f32 yPos) { b = 200; } } - RCP_SetupDL(&gMasterDisp, SETUPDL_76); + RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, r, g, b, 255); HUD_Hitpoints_Draw(xPos, yPos); } @@ -3482,7 +3486,7 @@ void HUD_BombCounter_Draw(f32 x, f32 y) { D_80161784 = 0.0f; } - RCP_SetupDL_78(); + gSPDisplayList(gMasterDisp++, gRcpSetupDLs[SETUPDL_78_POINT]); gDPSetPrimColor(gMasterDisp++, 0, 0, (s32) D_80161770, (s32) D_80161774, (s32) D_80161778, D_hud_80161708); if (gCurrentLevel == LEVEL_AQUAS) { @@ -3552,7 +3556,7 @@ void HUD_BombCounter_Draw(f32 x, f32 y) { break; case 6: - RCP_SetupDL(&gMasterDisp, SETUPDL_78); + RCP_SetupDL(&gMasterDisp, SETUPDL_78_POINT); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); Lib_TextureRect_CI4(&gMasterDisp, D_blue_marine_3000090, D_blue_marine_3000120, 32, 9, x + 1.0f, y, 1.0f, 1.0f); @@ -3593,6 +3597,7 @@ void HUD_Draw(void) { s32 i; s32 goldRings; bool medalStatus; + gDPSetTextureFilter(gMasterDisp++, G_TF_POINT); if (D_hud_80161730 == 0) { for (i = 0; i < 10; i++) { @@ -3701,6 +3706,7 @@ void HUD_Draw(void) { } HUD_RadioDamage(); HUD_PauseScreen_Update(); + gDPSetTextureFilter(gMasterDisp++, G_TF_BILERP); } void FoBase_Draw(Boss* boss) { diff --git a/src/engine/fox_radio.c b/src/engine/fox_radio.c index 3c0b3617..9cde4152 100644 --- a/src/engine/fox_radio.c +++ b/src/engine/fox_radio.c @@ -423,7 +423,7 @@ void func_radio_800BAAE8(void) { D_800D4A74 = -1.0f; } sp38 = gRadioPortraitScaleY * 20.0f * D_800D4A74; - RCP_SetupDL_76(); + gSPDisplayList(gMasterDisp++, gRcpSetupDLs[SETUPDL_76_POINT]); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 255); if (mirror) { @@ -700,7 +700,7 @@ void Radio_Draw(void) { if ((gTeamShields[idx] <= 0) && (gGameFrameCount & 4) && (gTeamShields[idx] != -2) && (gCurrentRadioPortrait != RCID_STATIC) && (gCurrentRadioPortrait != RCID_STATIC + 1) && (gCurrentRadioPortrait != RCID_1000)) { - RCP_SetupDL(&gMasterDisp, SETUPDL_76); + RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 0, 255); Graphics_DisplaySmallText(31, 167, 1.0f, 1.0f, "DOWN"); HUD_TeamDownWrench_Draw(1); @@ -749,7 +749,7 @@ void Radio_Draw(void) { if ((gActors[idx].obj.status != OBJ_ACTIVE) && (gGameFrameCount & 4) && (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_ACTIVE) && (gCurrentRadioPortrait != RCID_STATIC) && (gCurrentRadioPortrait != RCID_STATIC + 1) && (gCurrentRadioPortrait != RCID_1000)) { - RCP_SetupDL(&gMasterDisp, SETUPDL_76); + RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 0, 255); Graphics_DisplaySmallText(31, 167, 1.0f, 1.0f, "DOWN"); } diff --git a/src/engine/fox_rcp_setup.c b/src/engine/fox_rcp_setup.c index d13ff44f..f6c06835 100644 --- a/src/engine/fox_rcp_setup.c +++ b/src/engine/fox_rcp_setup.c @@ -1229,7 +1229,7 @@ Gfx gRcpSetupDLs[][9] = { gsSPSetGeometryMode(0), gsSPSetOtherMode(G_SETOTHERMODE_L, G_MDSFT_ALPHACOMPARE, 3, G_AC_NONE | G_ZS_PIXEL), gsDPSetRenderMode(G_RM_XLU_SURF, G_RM_XLU_SURF2), - gsSPSetOtherModeHi(G_AD_PATTERN | G_CD_MAGICSQ | G_CK_NONE | G_TC_FILT | G_TF_BILERP | G_TT_RGBA16 | G_TL_TILE | + gsSPSetOtherModeHi(G_AD_PATTERN | G_CD_MAGICSQ | G_CK_NONE | G_TC_FILT | G_TF_POINT | G_TT_RGBA16 | G_TL_TILE | G_TD_CLAMP | G_TP_NONE | G_CYC_1CYCLE | G_PM_NPRIMITIVE), gsSPEndDisplayList(), }, @@ -1265,4 +1265,103 @@ Gfx gRcpSetupDLs[][9] = { G_TD_CLAMP | G_TP_PERSP | G_CYC_2CYCLE | G_PM_NPRIMITIVE), gsSPEndDisplayList(), }, + { + /* SETUPDL_75_POINT */ + gsDPPipeSync(), + gsSPClearGeometryMode(G_ZBUFFER | G_SHADE | G_CULL_BOTH | G_FOG | G_LIGHTING | G_TEXTURE_GEN | + G_TEXTURE_GEN_LINEAR | G_LOD | G_SHADING_SMOOTH), + gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON), + gsDPSetCombineMode(G_CC_MODULATEIDECALA_PRIM, G_CC_MODULATEIDECALA_PRIM), + gsSPSetGeometryMode(0), + gsSPSetOtherMode(G_SETOTHERMODE_L, G_MDSFT_ALPHACOMPARE, 3, G_AC_NONE | G_ZS_PIXEL), + gsDPSetRenderMode(G_RM_AA_OPA_SURF, G_RM_AA_OPA_SURF2), + gsSPSetOtherModeHi(G_AD_PATTERN | G_CD_MAGICSQ | G_CK_NONE | G_TC_FILT | G_TF_POINT | G_TT_RGBA16 | G_TL_TILE | + G_TD_CLAMP | G_TP_NONE | G_CYC_1CYCLE | G_PM_NPRIMITIVE), + gsSPEndDisplayList(), + }, + { + /* SETUPDL_76_POINT */ + gsDPPipeSync(), + gsSPClearGeometryMode(G_ZBUFFER | G_SHADE | G_CULL_BOTH | G_FOG | G_LIGHTING | G_TEXTURE_GEN | + G_TEXTURE_GEN_LINEAR | G_LOD | G_SHADING_SMOOTH), + gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON), + gsDPSetCombineMode(G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM), + gsSPSetGeometryMode(0), + gsSPSetOtherMode(G_SETOTHERMODE_L, G_MDSFT_ALPHACOMPARE, 3, G_AC_NONE | G_ZS_PIXEL), + gsDPSetRenderMode(G_RM_XLU_SURF, G_RM_XLU_SURF2), + gsSPSetOtherModeHi(G_AD_PATTERN | G_CD_MAGICSQ | G_CK_NONE | G_TC_FILT | G_TF_POINT | G_TT_NONE | G_TL_TILE | + G_TD_CLAMP | G_TP_NONE | G_CYC_1CYCLE | G_PM_NPRIMITIVE), + gsSPEndDisplayList(), + }, + { + /* SETUPDL_77_POINT */ + gsDPPipeSync(), + gsSPClearGeometryMode(G_ZBUFFER | G_SHADE | G_CULL_BOTH | G_FOG | G_LIGHTING | G_TEXTURE_GEN | + G_TEXTURE_GEN_LINEAR | G_LOD | G_SHADING_SMOOTH), + gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON), + gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, + PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT), + gsSPSetGeometryMode(0), + gsSPSetOtherMode(G_SETOTHERMODE_L, G_MDSFT_ALPHACOMPARE, 3, G_AC_NONE | G_ZS_PIXEL), + gsDPSetRenderMode(G_RM_XLU_SURF, G_RM_XLU_SURF2), + gsSPSetOtherModeHi(G_AD_PATTERN | G_CD_MAGICSQ | G_CK_NONE | G_TC_FILT | G_TF_POINT | G_TT_NONE | G_TL_TILE | + G_TD_CLAMP | G_TP_NONE | G_CYC_1CYCLE | G_PM_NPRIMITIVE), + gsSPEndDisplayList(), + }, + { + /* SETUPDL_78_POINT */ + gsDPPipeSync(), + gsSPClearGeometryMode(G_ZBUFFER | G_SHADE | G_CULL_BOTH | G_FOG | G_LIGHTING | G_TEXTURE_GEN | + G_TEXTURE_GEN_LINEAR | G_LOD | G_SHADING_SMOOTH), + gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON), + gsDPSetCombineMode(G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM), + gsSPSetGeometryMode(0), + gsSPSetOtherMode(G_SETOTHERMODE_L, G_MDSFT_ALPHACOMPARE, 3, G_AC_NONE | G_ZS_PIXEL), + gsDPSetRenderMode(G_RM_XLU_SURF, G_RM_XLU_SURF2), + gsSPSetOtherModeHi(G_AD_PATTERN | G_CD_MAGICSQ | G_CK_NONE | G_TC_FILT | G_TF_POINT | G_TT_RGBA16 | G_TL_TILE | + G_TD_CLAMP | G_TP_NONE | G_CYC_1CYCLE | G_PM_NPRIMITIVE), + gsSPEndDisplayList(), + }, + { + /* SETUPDL_81_POINT */ + gsDPPipeSync(), + gsSPClearGeometryMode(G_ZBUFFER | G_SHADE | G_CULL_BOTH | G_FOG | G_LIGHTING | G_TEXTURE_GEN | + G_TEXTURE_GEN_LINEAR | G_LOD | G_SHADING_SMOOTH), + gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON), + gsDPSetCombineMode(G_CC_MODULATEIDECALA_PRIM, G_CC_MODULATEIDECALA_PRIM), + gsSPSetGeometryMode(0), + gsSPSetOtherMode(G_SETOTHERMODE_L, G_MDSFT_ALPHACOMPARE, 3, G_AC_NONE | G_ZS_PIXEL), + gsDPSetRenderMode(G_RM_XLU_SURF, G_RM_XLU_SURF2), + gsSPSetOtherModeHi(G_AD_PATTERN | G_CD_MAGICSQ | G_CK_NONE | G_TC_FILT | G_TF_POINT | G_TT_RGBA16 | G_TL_TILE | + G_TD_CLAMP | G_TP_NONE | G_CYC_1CYCLE | G_PM_NPRIMITIVE), + gsSPEndDisplayList(), + }, + { + /* SETUPDL_83_POINT */ + gsDPPipeSync(), + gsSPClearGeometryMode(G_ZBUFFER | G_SHADE | G_CULL_BOTH | G_FOG | G_LIGHTING | G_TEXTURE_GEN | + G_TEXTURE_GEN_LINEAR | G_LOD | G_SHADING_SMOOTH), + gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON), + gsDPSetCombineMode(G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM), + gsSPSetGeometryMode(0), + gsSPSetOtherMode(G_SETOTHERMODE_L, G_MDSFT_ALPHACOMPARE, 3, G_AC_NONE | G_ZS_PIXEL), + gsDPSetRenderMode(G_RM_XLU_SURF, G_RM_XLU_SURF2), + gsSPSetOtherModeHi(G_AD_PATTERN | G_CD_MAGICSQ | G_CK_NONE | G_TC_FILT | G_TF_POINT | G_TT_NONE | G_TL_TILE | + G_TD_CLAMP | G_TP_NONE | G_CYC_1CYCLE | G_PM_NPRIMITIVE), + gsSPEndDisplayList(), + }, + { + /* SETUPDL_85_POINT */ + gsDPPipeSync(), + gsSPClearGeometryMode(G_ZBUFFER | G_SHADE | G_CULL_BOTH | G_FOG | G_LIGHTING | G_TEXTURE_GEN | + G_TEXTURE_GEN_LINEAR | G_LOD | G_SHADING_SMOOTH), + gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON), + gsDPSetCombineMode(G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM), + gsSPSetGeometryMode(0), + gsSPSetOtherMode(G_SETOTHERMODE_L, G_MDSFT_ALPHACOMPARE, 3, G_AC_NONE | G_ZS_PIXEL), + gsDPSetRenderMode(G_RM_XLU_SURF, G_RM_XLU_SURF2), + gsSPSetOtherModeHi(G_AD_PATTERN | G_CD_MAGICSQ | G_CK_NONE | G_TC_FILT | G_TF_POINT | G_TT_RGBA16 | G_TL_TILE | + G_TD_CLAMP | G_TP_NONE | G_CYC_1CYCLE | G_PM_NPRIMITIVE), + gsSPEndDisplayList(), + }, }; |
