From af3b538ed92d9e87c86fdede957a1639189dec05 Mon Sep 17 00:00:00 2001 From: Lilaa3 <87947656+Lilaa3@users.noreply.github.com> Date: Mon, 25 Sep 2023 14:26:31 +0100 Subject: [PATCH] Remove sharp transitions (#702) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Cannon render mode fix Slipped past me. * Removed sharp transitions I like the idea but it really isn“t vanilla and causes issues. Might be worth revisiting but for now lets just get rid of it. * fixes Missing render mode set for transitions, reduced display list alloc for cannon tested more this time --- bin/segment2.c | 20 ------------------ include/config/config_graphics.h | 5 ----- src/game/screen_transition.c | 17 +++------------ .../segment2/transition_bowser_half.i8.png | Bin 2876 -> 0 bytes .../segment2/transition_circle_half.i8.png | Bin 1680 -> 0 bytes textures/segment2/transition_mario.i8.png | Bin 3036 -> 0 bytes textures/segment2/transition_star_half.i8.png | Bin 1607 -> 0 bytes 7 files changed, 3 insertions(+), 39 deletions(-) delete mode 100644 textures/segment2/transition_bowser_half.i8.png delete mode 100644 textures/segment2/transition_circle_half.i8.png delete mode 100644 textures/segment2/transition_mario.i8.png delete mode 100644 textures/segment2/transition_star_half.i8.png diff --git a/bin/segment2.c b/bin/segment2.c index aef1135d..71339cb3 100644 --- a/bin/segment2.c +++ b/bin/segment2.c @@ -2673,25 +2673,6 @@ UNUSED ALIGNED8 static const Texture texture_radial_light[] = { #include "textures/segment2/light_quarter_circle.ia16.inc.c" }; -#ifdef SHARP_TRANSITION_TEXTURES -const Texture texture_transition_star_half[] = { -#include "textures/segment2/transition_star_half.i8.inc.c" -}; - -const Texture texture_transition_circle_half[] = { -#include "textures/segment2/transition_circle_half.i8.inc.c" -}; - -const Texture texture_transition_mario[] = { -#include "textures/segment2/transition_mario.i8.inc.c" -}; - -const Texture texture_transition_bowser_half[] = { -#include "textures/segment2/transition_bowser_half.i8.inc.c" -}; - -#else - const Texture texture_transition_star_half[] = { #include "textures/segment2/segment2.0F458.ia8.inc.c" }; @@ -2707,7 +2688,6 @@ const Texture texture_transition_mario[] = { const Texture texture_transition_bowser_half[] = { #include "textures/segment2/segment2.11458.ia8.inc.c" }; -#endif const Texture texture_waterbox_water[] = { #include "textures/segment2/segment2.11C58.rgba16.inc.c" diff --git a/include/config/config_graphics.h b/include/config/config_graphics.h index b248c8a2..6e8c68c1 100644 --- a/include/config/config_graphics.h +++ b/include/config/config_graphics.h @@ -145,11 +145,6 @@ */ #define EASE_IN_OUT_TRANSITIONS -/** - * Makes use of the tex edge render mode to deliver smooth transition textures - */ -// #define SHARP_TRANSITION_TEXTURES - /** * Uses frustratio of 2 instead of 1. * Can improve performance in some circumstances, though it can also cause large tris to warp if cut off from the camera. diff --git a/src/game/screen_transition.c b/src/game/screen_transition.c index 03ccaf74..2376b1f7 100644 --- a/src/game/screen_transition.c +++ b/src/game/screen_transition.c @@ -13,12 +13,6 @@ #include "segment2.h" #include "sm64.h" -#ifdef SHARP_TRANSITION_TEXTURES -#define TRANSITION_TEXTURE_TYPE G_IM_FMT_I -#else -#define TRANSITION_TEXTURE_TYPE G_IM_FMT_IA -#endif - u8 sTransitionFadeTimer = 0; u16 sTransitionTextureAngle = 0; @@ -164,21 +158,16 @@ s32 render_textured_transition(s8 transTime, struct WarpTransitionData *transDat gDPSetCombineLERP(gDisplayListHead++, 0, 0, 0, PRIMITIVE, 0, 0, 0, TEXEL0, 0, 0, 0, PRIMITIVE, 0, 0, 0, TEXEL0); -#ifdef SHARP_TRANSITION_TEXTURES - gDPSetRenderMode(gDisplayListHead++, G_RM_AA_TEX_EDGE, G_RM_AA_TEX_EDGE2); -#else gDPSetRenderMode(gDisplayListHead++, G_RM_AA_XLU_SURF, G_RM_AA_XLU_SURF2); -#endif - gDPSetTextureFilter(gDisplayListHead++, G_TF_BILERP); switch (transTexType) { case TRANS_TYPE_MIRROR: - gDPLoadTextureBlock(gDisplayListHead++, sTextureTransitionID[texID], TRANSITION_TEXTURE_TYPE, G_IM_SIZ_8b, 32, 64, 0, + gDPLoadTextureBlock(gDisplayListHead++, sTextureTransitionID[texID], G_IM_FMT_IA, G_IM_SIZ_8b, 32, 64, 0, G_TX_WRAP | G_TX_MIRROR, G_TX_WRAP | G_TX_MIRROR, 5, 6, G_TX_NOLOD, G_TX_NOLOD); break; case TRANS_TYPE_CLAMP: - gDPLoadTextureBlock(gDisplayListHead++, sTextureTransitionID[texID], TRANSITION_TEXTURE_TYPE, G_IM_SIZ_8b, 64, 64, 0, + gDPLoadTextureBlock(gDisplayListHead++, sTextureTransitionID[texID], G_IM_FMT_IA, G_IM_SIZ_8b, 64, 64, 0, G_TX_CLAMP, G_TX_CLAMP, 6, 6, G_TX_NOLOD, G_TX_NOLOD); break; } @@ -325,7 +314,7 @@ Gfx *render_cannon_circle_base(void) { gSPDisplayList(g++, dl_proj_mtx_fullscreen); gDPSetCombineMode(g++, G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM); gDPSetTextureFilter(g++, G_TF_BILERP); - gDPLoadTextureBlock(g++, sTextureTransitionID[TEX_TRANS_CIRCLE], TRANSITION_TEXTURE_TYPE, G_IM_SIZ_8b, 32, 64, 0, + gDPLoadTextureBlock(g++, sTextureTransitionID[TEX_TRANS_CIRCLE], G_IM_FMT_IA, G_IM_SIZ_8b, 32, 64, 0, G_TX_WRAP | G_TX_MIRROR, G_TX_WRAP | G_TX_MIRROR, 5, 6, G_TX_NOLOD, G_TX_NOLOD); gSPTexture(g++, 0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON); gSPVertex(g++, VIRTUAL_TO_PHYSICAL(verts), 4, 0); diff --git a/textures/segment2/transition_bowser_half.i8.png b/textures/segment2/transition_bowser_half.i8.png deleted file mode 100644 index 7f321dc58e01493681fafc54abe5ced912b42ba2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2876 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 VcSQI+7#J8BJYD@<);T3K0RRMzk+T2* diff --git a/textures/segment2/transition_star_half.i8.png b/textures/segment2/transition_star_half.i8.png deleted file mode 100644 index f5843af042e5aead4fccea51290472467019d54f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1607 zcmeAS@N?(olHy`uVBq!ia0y~yU{GLSU~u4IV_;yY?kio#z`&T7>FgYknVihPpfRy@ zqO~`(qe!d0u<0T}R$Y^boP|k(t|CW*lxCvnOA6vi$G+E}a#!_g(njfA_yX&+wAo#%IcVNO@PL<)P$58&i*m>`}b4 z?)jw5hqVtksIrUf3#dBv*!^f^f4pdP=MRe?A^y6*n}h8m&PTF7w0ro@Y2TXq`R;dB zGDOmsEp1CFOB7c3V(Ar0op$2!1^ulWGylGo{`1KzsJp7e+n*~=?7u=mL$C2Zhdb!k|FJ^lY$G>U|?XbV9Co{kJemT49 z+Fo|u?1G}Wt3kI5cJaxUr(N=@^Q@b>&xdVZ|H4YXTk94S9z6Z3dhX(Ak2R-+V-KCv z`*P~vw4?sI{u%O6&R-Q2Hw4YfBNCW z&O7(*oA&+t_e+d-&YbaSczEud-^;geuU2o3(mksl^PsQa} z>gt^g66s%@ot=#=EHq+cV}qt~y?gyy`@q|?KR$dYSgEz+!fR%?>`&4jky;uIl?^T} ze|%c+T3cCtsnni4h5IUhM{URf#!j}HMf>;1@7leam0g#WLDZ>U;CT!$14l#D%L%I( z{5THWzCC+c3eV*kU19C1ybYNNwhnnRo7QYt!?=J+;MoK*-nD$E|1(Os%uKu~a3Ewu z!Io<6Lq==@p$mI9_^@bb>qs*#aEeTv$q^71p~f^re}=Qrv?uI`CdoKy)WC9m6ekcCEfe&6OTwNyS0g_Lv_EVLrCl8%fYeA^XAY0ns-^iT)du%;aFs{ zo4b2zSy|Y7U&a@wLM$vSF6`X5Yu72A{cAU^u&}pZU&rF3#SoIP)W*_s;_>6|v5Ouj z=lp4zc)1|Pt@q6VgW8of2X-BO85bX4`re^EQ~%lALv3y>zJ7kIls^}1$#+OOaV}GS z+giva)w6Ehx>L7q&C=1=e=Q<#ZAF0Z?Z|82bDlgr=5A(YmQq|CeEZO$rk?)(>t6q- zF{nt!M@0ph&fvS3sKw3hVbu2}I5_wfx5fOQfeRTTdyUt&GX9Xz=Q(h_LXn}e=Q-Pn zY?+3Tl{3U&>l^!3sUD12qh4A4_xrbceRY+V69p|-A3a*MX3d%tzkcl!c;4%Dw#Rf= zHS>hyCo|UMiD+)yGbv?J;k^?XUuKFkWHUYY;^*hzWwwChEKl^LPARWnH>Debdc9sg zd*1%}IU^t)gD() zEOL5buJ^&I{iM&~xS>_d&w>9?@=mxUMyArW`SSImMNJY{xgqtd~Dvi(^5CiQqz%< z?a)-|0}-zrC)~?&`O}v1pk&QGPHyHE?1@jd?Gdi(v9c