Con el tema de fondos llevo yo peleandome unos dias.
ideas:
- pon // para qe no ejecute la carga del fondo y asi ves si se ve el texto.
- si se ve, puede ser qe el color del fondo sea el mismo qe el color del texto, por eso, aunqe esta escrito, no lo ves.
- si no se ve, aparte del caso anterior, puede ser de algun fondo/color anterior qe te deja la cosa chunga.
- carga las paletas del texto despues de cargar el fondo. A mi me paso similar con unos checkbox (no se distinguian apenas) y lo corregi cargando la paleta de las PAPI antes de crear los cheks.
Comandos para eliminar fondos y el sistema de fondos:
PA_ResetBg(screen)
PA_ResetBgSysScreen (u8 screen)
menos radicales
PA_DeleteBg (u8 screen, u8 bg_select)
PA_ClearBg (u8 screen, u8 bg_select)
de todas formas, mirate en internet documentacion de palib, qe luego solo es cuestion de ir probando
http://www.palib.info/Doc/PAlibDoc%20Eng/main.html
Por cierto, al qe decia hacer transiciones de fondos, si se puede. Un ejemplo.
Yo trabajo con fondos 8bits. Lo qe hace este codigo es un fundido desde negro al fondo (en cada pantalla uno), pero puedes retocarlo para qe desde un fondo se funda a negro y cuando termine desde negro te carge otro fondo distinto (en la pantalla qe quieras)
Ejemplos hay muchos en la carpeta de palib.
// Iniciar un fondo de 8 bits en ambas pantallas
PA_Init8bitBg(0, 3);
PA_Init8bitBg(1, 3);
PA_Load8bitBgPal(0, (void*)colores_Pal);
PA_Load8bitBgPal(1, (void*)bitmap_Pal);
// cargando paletas
PA_SetBrightness(0, -31); // pantalla negra
PA_SetBrightness(1, -31);
// cargar fondo
PA_Load8bitBitmap(0, xxxxxxx_Bitmap);
PA_Load8bitBitmap(1,yyyyyy_Bitmap);
s8 i;
// fondo a visible
for(i = -32; i <= 0; i++){
PA_SetBrightness(0, i);
PA_SetBrightness(1, i);
PA_WaitForVBL();
}
s16 time = 120; // 120 frames = 2 segundos
while(time && (!Pad.Newpress.Anykey) && (!Stylus.Newpress)){ // hace hasta qe pulsas
time--;
PA_WaitForVBL();
}
PA_SetBrightness(0, 0); // normal
PA_SetBrightness(1, 0); // normal