Fandom

Scratchpad

TEMA3: Fondos y textos

229,513pages on
this wiki
Add New Page
Discuss this page0 Share

Bueno en este tema, se explicará como cargar un fondo y también seguiremos con el texto.

Para empezar nos vamos a C:\devkitPro\PAlib\Tools\PAGfx y descomprimimos el archivo comprimido.

Cojemos el archivo que deja al descomprimir (PAGfx.exe) y el archivo PAGfx.ini.

Los copiamos y los pegamos en la carpeta que habíamos creado antes. (C:\devkitPro\programas\ej03\source\gfx)

Ahora obtendremos una imagen de 256x192, y la llamaremos como queramos (yo la he llamado bg0) y la metemos en C:\devkitPro\programas\ej03\source\gfx.

IMPORTANTE: La imagen debe de estar en PNG.

Cuando tengamos la imagen lista, abriremos el archivo PAGfx.ini.

Lo tenemos así:


#TranspColor Magenta

#Sprites :

#Backgrounds :

#Textures :

Debajo de backgrounds escribimos el nombre de nuestra imagen (en mi caso bg0.PNG). Después dejamos un espacio e indicamos que es un fondo poniendo EasyBg.

El código quedaría así:


#TranspColor Magenta

#Sprites :

#Backgrounds :

bg0.png EasyBg

#Textures :

Después de esto le damos a PAGfx.exe y os creará unos archivos en la carpeta.

Ahora viene lo complicado, el código.


#include <PA9.h> // Include de las PA_Lib

#include "gfx/all_gfx.c" //Incluimos los gráficos, gfx/all_gfx.c es uno de los archivos que se crearon antes

#include "gfx/all_gfx.h" //Incluimos los gráficos, se compone de dos archivos.

// Funcion: main()
int main(int argc, char ** argv)
{
PA_Init(); // Iniciamos palib

PA_InitVBL(); // Iniciamos VBL

PA_InitText(0, 0); //Iniciamos texto

PA_OutputSimpleText(0, 5, 5,"Hola y adios si quieres tambien");

PA_EasyBgLoad(0, // pantalla

3, // número de capa (0-3)

bg0); // nombre del fondo, el de la imagen de antes.

PA_EasyBgLoad(1, 3, bg0);

/* Ahora os explicaré un poco las capas… hay tres capas, 0, 1 ,2 y 3.
La capa 3 será la que irá más al fondo, la 2 delante de la tercera pero a la vez detrás de 1 y 0..., y así sucesivamente...
La capa 0 seria la frontal, aquí pondremos el texto porque sino la podemos tapar con el fondo .*/

//Bucle que hace la funcion de system pause o cin.get/ignore();
while (1)
{
PA_WaitForVBL();
}

return 0;
} //Fin de main()


Y ya tenemos el codigo listo para compilar.

Una imagen del ejemplo

Ejercicio2

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.