gfxEngine_documentation
bfg_GfxEngine_PC.h File Reference
#include <SDL2/SDL.h>
#include <stdlib.h>

Go to the source code of this file.

Data Structures

struct  si
 
struct  ib
 
struct  it
 
struct  al
 

Macros

#define MAX_IMAGE_TRA   16
 
#define MAX_IMAGEBANK_TRA   5000
 
#define MAX_IMGTILE   4096
 
#define MAX_ALPHA   255
 
#define IMAGE_TRA0   0
 
#define IMAGE_TRA1   1
 
#define IMAGE_TRA2   2
 
#define IMAGE_TRA3   3
 
#define IMAGE_TRA4   4
 
#define IMAGE_TRA5   5
 
#define IMAGE_TRA6   6
 
#define IMAGE_TRA7   7
 
#define IMAGE_TRA8   8
 
#define IMAGE_TRA9   9
 
#define IMAGE_TRA10   10
 
#define IMAGE_TRA11   11
 
#define IMAGE_TRA12   12
 
#define IMAGE_TRA13   13
 
#define IMAGE_TRA14   14
 
#define IMAGE_TRA15   15
 

Typedefs

typedef struct si simage
 
typedef struct ib sibank
 
typedef struct it stiles
 
typedef struct al salpha
 

Functions

void destroyGfxEngine ()
 
void initGfxEngine ()
 Initialise le gfxEngine en 640*480. More...
 
void initGfxEngine320 ()
 Initialise le gfxEngine en 320*240. More...
 
int getResX (void)
 Retourne la valeur de la resolution x en pixel. More...
 
int getResY (void)
 Retourne la valeur de la resolution y en pixel. More...
 
void waitInMs (int ms)
 
void synchroStart ()
 
void synchroEnd (int ms)
 
void prepareEcritureVideoGlobale ()
 Signale au PVR qu'il va recevoir des donnees (Dreamcast only) More...
 
void prepareEcritureVideoTra ()
 Signale au PVR qu'il va recevoir des polygones avec transparence (Dreamcast only) More...
 
void termineEcritureVideoTra ()
 Signale au PVR qu'on a termine l'envoie des polygones transparent (Dreamcast only) More...
 
void termineEcritureVideoGlobale ()
 Signale au PVR qu'on a termine d'ecrire des donnees et affiche a l'ecran.(Dreamcast) Ou affiche le buffer video PC a l'ecran. (PC) More...
 
int loadImageTra (char *filename, int noImage, int hauteur, int largeur)
 Charge une image PNG 32bits. More...
 
int loadMask (char *filename, int noImage)
 Charge un masque de collision de sprite en memoire. More...
 
int getPixelMask (int noImage, int x, int y)
 
void freeMask (int noImage)
 Libere la memoire utilisee par le masque lie a une image. More...
 
int loadCompressMask (char *filename, int noImage)
 Charge un masque de collision compresse de sprite en memoire. More...
 
void freeCompressMask (int noImage)
 
int getPixelCompressMask (int noImage, int x, int y)
 Libere la memoire utilisee par le masque compresse lie a une image. More...
 
void blitImageTra (int ino, int dx, int dy)
 Affiche une image. More...
 
int getFreeImageBankTra ()
 Retourne le premier numero d'imageBank non utilise. More...
 
void getImageBankTra (int ibno, int is, int sx, int sy, int sh, int sl)
 Cree en memoire une portion d'image (= ImageBank) a partir d'une image complete. More...
 
void blitImageBankTra (int ibno, int dx, int dy)
 Affiche une imageBank. More...
 
void blitImageBankTraRot (int ibno, int dx, int dy, float myrot, float zx, float zy, int center)
 Affiche une imageBank avec zoom et rotation. More...
 
void getImageTile (int ibno, int is, int sx, int sy, int sh, int sl)
 Cree en memoire une tuile (= Tile) a partir d'une image complete. (Servira pour tileMapEngine ou scrollMapEngine) More...
 
void blitImageTile (int ibno, int dx, int dy)
 Affiche une tuile. More...
 
void getImageAlpha (int ibno, int is, int sx, int sy, int sh, int sl)
 Cree en memoire un caractere graphique (= Alpha) a partir d'une image complete. (Servira pour writeEngine) More...
 
void blitImageAlpha (int ibno, int dx, int dy)
 Affiche un Alpha. More...
 
void freeImageTra (int noImage)
 Detruit l'image et libere la memoire. More...
 
void freeAllImageTra (void)
 Detruit toutes les images et libere la memoire. More...
 
void freeAllImage (void)
 Detruit toutes les images et libere la memoire (Doublon freeAllImageTra) More...
 
int checkController ()
 Lit la manette (Dreamcast) ou le clavier (PC), et charge en memoire les donnees recueillis. More...
 
int getKeyA (void)
 Retourne 1 si le bouton A de la manette a ete presse (Dreamcast), ou touche "C" (PC) More...
 
int getKeyB (void)
 Retourne 1 si le bouton B de la manette a ete presse (Dreamcast), ou touche "V" (PC) More...
 
int getKeyX (void)
 Retourne 1 si le bouton X de la manette a ete presse (Dreamcast), ou touche "B" (PC) More...
 
int getKeyY (void)
 Retourne 1 si le bouton Y de la manette a ete presse (Dreamcast), ou touche "N" (PC) More...
 
int getKeyUp (void)
 Retourne 1 si le bouton HAUT de la manette a ete presse (Dreamcast), ou touche "haut" (PC) More...
 
int getKeyDown (void)
 Retourne 1 si le bouton BAS de la manette a ete presse (Dreamcast), ou touche "bas" (PC) More...
 
int getKeyLeft (void)
 Retourne 1 si le bouton GAUCHE de la manette a ete presse (Dreamcast), ou touche "gauche" (PC) More...
 
int getKeyRight (void)
 Retourne 1 si le bouton DROITE de la manette a ete presse (Dreamcast), ou touche "droite" (PC) More...
 
int getKeyStart (void)
 Retourne 1 si le bouton START de la manette a ete presse (Dreamcast), ou touche "P" (PC) More...
 
int anyActionKeyPress (void)
 Retourne 1 si une touche "action" (A,B,X,Y sur DC) (C,V,B,N sur PC) a ete enfonce. More...
 
int getNoDirection (void)
 Retourne 1 si il n'y a aucune direction de selectionne. More...
 

Macro Definition Documentation

#define IMAGE_TRA0   0
#define IMAGE_TRA1   1
#define IMAGE_TRA10   10
#define IMAGE_TRA11   11
#define IMAGE_TRA12   12
#define IMAGE_TRA13   13
#define IMAGE_TRA14   14
#define IMAGE_TRA15   15
#define IMAGE_TRA2   2
#define IMAGE_TRA3   3
#define IMAGE_TRA4   4
#define IMAGE_TRA5   5
#define IMAGE_TRA6   6
#define IMAGE_TRA7   7
#define IMAGE_TRA8   8
#define IMAGE_TRA9   9
#define MAX_ALPHA   255
#define MAX_IMAGE_TRA   16
#define MAX_IMAGEBANK_TRA   5000
#define MAX_IMGTILE   4096

Typedef Documentation

typedef struct al salpha
typedef struct ib sibank
typedef struct si simage
typedef struct it stiles

Function Documentation

int anyActionKeyPress ( void  )

Retourne 1 si une touche "action" (A,B,X,Y sur DC) (C,V,B,N sur PC) a ete enfonce.

Returns
0 ou 1
void blitImageAlpha ( int  ibno,
int  dx,
int  dy 
)

Affiche un Alpha.

Parameters
ibno: Numero de l'alpha a afficher
dx: Position x en pixel
dy: Position y en pixel
Returns
void blitImageBankTra ( int  ibno,
int  dx,
int  dy 
)

Affiche une imageBank.

Parameters
ibno: Numero de l'imageBank a afficher
dx: Position x en pixel
dy: Position y en pixel
Returns
void blitImageBankTraRot ( int  ibno,
int  dx,
int  dy,
float  myrot,
float  zx,
float  zy,
int  center 
)

Affiche une imageBank avec zoom et rotation.

Parameters
ibno: Numero de l'imageBank a afficher
dx: Position x en pixel
dy: Position y en pixel
myrot: Angle de rotation
zx: Facteur de zoom x
zy: Facteur de zoom y
dy: La rotation se fait-elle du centre ou du coin superieur gauche ? (0 - coin / 1 - centre)
Returns
void blitImageTile ( int  ibno,
int  dx,
int  dy 
)

Affiche une tuile.

Parameters
ibno: Numero de la tile a afficher
dx: Position x en pixel
dy: Position y en pixel
Returns
void blitImageTra ( int  ino,
int  dx,
int  dy 
)

Affiche une image.

Parameters
ino: Numero de l'image a afficher
dx: Position x en pixel
dy: Position y en pixel
Returns
int checkController ( )

Lit la manette (Dreamcast) ou le clavier (PC), et charge en memoire les donnees recueillis.

Returns
0
void destroyGfxEngine ( )
void freeAllImage ( void  )

Detruit toutes les images et libere la memoire (Doublon freeAllImageTra)

Parameters
noImage: Numero de l'image
Returns
void freeAllImageTra ( void  )

Detruit toutes les images et libere la memoire.

Parameters
noImage: Numero de l'image
Returns
void freeCompressMask ( int  noImage)
void freeImageTra ( int  noImage)

Detruit l'image et libere la memoire.

Parameters
noImage: Numero de l'image
Returns
void freeMask ( int  noImage)

Libere la memoire utilisee par le masque lie a une image.

Parameters
noImage: Numero de l'image que reference le masque
Returns
int getFreeImageBankTra ( )

Retourne le premier numero d'imageBank non utilise.

Returns
numero d'imageBank libre
void getImageAlpha ( int  ibno,
int  is,
int  sx,
int  sy,
int  sh,
int  sl 
)

Cree en memoire un caractere graphique (= Alpha) a partir d'une image complete. (Servira pour writeEngine)

Parameters
ibno: Numero de l'alpha que l'on veut cree
is: Numero de l'image source
sx: Position x de depart dans l'image source
sy: Position y de depart dans l'image source
sh: Hauteur de l'alpha
sl: Largeur de l'alpha
Returns
void getImageBankTra ( int  ibno,
int  is,
int  sx,
int  sy,
int  sh,
int  sl 
)

Cree en memoire une portion d'image (= ImageBank) a partir d'une image complete.

Parameters
ibno: Numero de l'imageBank que l'on veut cree
is: Numero de l'image source
sx: Position x de depart dans l'image source
sy: Position y de depart dans l'image source
sh: Hauteur de l'imageBank
sl: Largeur de l'imageBank
Returns
void getImageTile ( int  ibno,
int  is,
int  sx,
int  sy,
int  sh,
int  sl 
)

Cree en memoire une tuile (= Tile) a partir d'une image complete. (Servira pour tileMapEngine ou scrollMapEngine)

Parameters
ibno: Numero de la tuile que l'on veut cree
is: Numero de l'image source
sx: Position x de depart dans l'image source
sy: Position y de depart dans l'image source
sh: Hauteur de la tuile
sl: Largeur de la tuile
Returns
int getKeyA ( void  )

Retourne 1 si le bouton A de la manette a ete presse (Dreamcast), ou touche "C" (PC)

Returns
0 ou 1
int getKeyB ( void  )

Retourne 1 si le bouton B de la manette a ete presse (Dreamcast), ou touche "V" (PC)

Returns
0 ou 1
int getKeyDown ( void  )

Retourne 1 si le bouton BAS de la manette a ete presse (Dreamcast), ou touche "bas" (PC)

Returns
0 ou 1
int getKeyLeft ( void  )

Retourne 1 si le bouton GAUCHE de la manette a ete presse (Dreamcast), ou touche "gauche" (PC)

Returns
0 ou 1
int getKeyRight ( void  )

Retourne 1 si le bouton DROITE de la manette a ete presse (Dreamcast), ou touche "droite" (PC)

Returns
0 ou 1
int getKeyStart ( void  )

Retourne 1 si le bouton START de la manette a ete presse (Dreamcast), ou touche "P" (PC)

Returns
0 ou 1
int getKeyUp ( void  )

Retourne 1 si le bouton HAUT de la manette a ete presse (Dreamcast), ou touche "haut" (PC)

Returns
0 ou 1
int getKeyX ( void  )

Retourne 1 si le bouton X de la manette a ete presse (Dreamcast), ou touche "B" (PC)

Returns
0 ou 1
int getKeyY ( void  )

Retourne 1 si le bouton Y de la manette a ete presse (Dreamcast), ou touche "N" (PC)

Returns
0 ou 1
int getNoDirection ( void  )

Retourne 1 si il n'y a aucune direction de selectionne.

Returns
0 ou 1
int getPixelCompressMask ( int  noImage,
int  x,
int  y 
)

Libere la memoire utilisee par le masque compresse lie a une image.

Pour creer un masque de collision utiliser les outils livre avec la librairie

Parameters
noImage: Numero de l'image que reference le masque
Returns
int getPixelMask ( int  noImage,
int  x,
int  y 
)
int getResX ( void  )

Retourne la valeur de la resolution x en pixel.

Parameters
int getResY ( void  )

Retourne la valeur de la resolution y en pixel.

Parameters
void initGfxEngine ( )

Initialise le gfxEngine en 640*480.

Parameters
void initGfxEngine320 ( )

Initialise le gfxEngine en 320*240.

Parameters
int loadCompressMask ( char *  filename,
int  noImage 
)

Charge un masque de collision compresse de sprite en memoire.

Parameters
*filename: Chemin + nom du fichier masque
noImage: Numero de l'image que reference le masque
Returns
int loadImageTra ( char *  filename,
int  noImage,
int  hauteur,
int  largeur 
)

Charge une image PNG 32bits.

Attention : Pour garder la compatibilite Dreamcast l'image doit être un carre multiple de 2. (Ex: 128x128,512x512, ...).

Parameters
*filename: Chemin + nom du fichier image
noImage: Numero de l'image a charger
hauteur: Hauteur du fichier .PNG en pixel
largeur: Largeur du fichier .PNG en pixel
Returns
int loadMask ( char *  filename,
int  noImage 
)

Charge un masque de collision de sprite en memoire.

Pour creer un masque de collision utiliser les outils livre avec la librairie

Parameters
*filename: Chemin + nom du fichier masque
noImage: Numero de l'image que reference le masque
Returns
void prepareEcritureVideoGlobale ( )

Signale au PVR qu'il va recevoir des donnees (Dreamcast only)

La version PC est presente pour compatibilite mais ne fait rien

Parameters
void prepareEcritureVideoTra ( )

Signale au PVR qu'il va recevoir des polygones avec transparence (Dreamcast only)

La version PC est presente pour compatibilite mais ne fait rien
Snippet :
prepareEcritureVideoGlobale();
prepareEcritureVideoTra();
AFFICHER DECOR, SPRITES, ETC ...
termineEcritureVideoTra();
termineEcritureVideoGlobale();

Parameters
void synchroEnd ( int  ms)
void synchroStart ( )
void termineEcritureVideoGlobale ( )

Signale au PVR qu'on a termine d'ecrire des donnees et affiche a l'ecran.(Dreamcast) Ou affiche le buffer video PC a l'ecran. (PC)

Parameters
void termineEcritureVideoTra ( )

Signale au PVR qu'on a termine l'envoie des polygones transparent (Dreamcast only)

La version PC est presente pour compatibilite mais ne fait rien

Parameters
void waitInMs ( int  ms)