optimized RDP command execution

This commit is contained in:
farisawan-2000
2020-12-19 14:16:59 -05:00
parent 14937ef62b
commit 0d0ee9b86a
3 changed files with 9 additions and 2 deletions

View File

@@ -26,14 +26,17 @@ Gfx s2d_text_init_dl[] = {
gsSPEndDisplayList(),
};
void setup_font(int idx) {
void s2d_rdp_init(void) {
gDPPipeSync(gdl_head++);
gDPSetTextureFilter(gdl_head++, G_TF_POINT);
gSPDisplayList(gdl_head++, s2d_text_init_dl);
gDPSetEnvColor(gdl_head++, s2d_red, s2d_green, s2d_blue, s2d_alpha);
gDPSetCycleType(gdl_head++, G_CYC_1CYCLE);
gDPSetRenderMode(gdl_head++, G_RM_XLU_SPRITE, G_RM_XLU_SPRITE2);
gSPObjRenderMode(gdl_head++, G_OBJRM_XLU | G_OBJRM_BILERP);
}
void setup_font(int idx) {
gDPSetEnvColor(gdl_head++, s2d_red, s2d_green, s2d_blue, s2d_alpha);
gSPObjLoadTxtr(gdl_head++, &s2d_tex[idx]);
}

View File

@@ -9,6 +9,8 @@ extern uObjMtx final_mtx, rot_mtx;
extern int s2d_red, s2d_green, s2d_blue, s2d_alpha;
extern void s2d_rdp_init(void);
extern void setup_font(int idx);
extern void mtx_pipeline(uObjMtx *m, int x, int y);

View File

@@ -18,6 +18,8 @@ void s2d_snprint(int x, int y, const char *str, uObjMtx *buf, int len) {
if (*p == '\0') return;
s2d_rdp_init();
// resets parameters
s2d_red = s2d_green = s2d_blue = 255;
s2d_alpha = 255;