head 1.1; branch 1.1.1; access ; symbols start:1.1.1.1 PAlibDoc:1.1.1; locks ; strict; comment @# @; 1.1 date 2005.11.02.08.30.36; author jandujar; state Exp; branches 1.1.1.1; next ; 1.1.1.1 date 2005.11.02.08.30.36; author jandujar; state Exp; branches ; next ; desc @@ 1.1 log @Initial revision @ text @ PA_lib: Special Effects

Special Effects


Macros

#define PA_EnableBgMosaic(screen, bg)   _REG16(REG_BGCNT(screen, bg)) |= (1 << 6)
 Activer l'effet de mosaic pour un fond donné
#define PA_DisableBgMosaic(screen, bg)   _REG16(REG_BGCNT(screen, bg)) &= ~(1 << 6)
 Désactiver l'effet de mosaic pour un fond donné
#define PA_SetBgMosaicXY(screen, h_size, v_size)   {REG_MOSAIC(screen) &= 255; REG_MOSAIC(screen) |= (h_size + (v_size << 4));}
 Régler les paramètres de la mosaic pour les fonds
#define PA_SetSpriteMosaicXY(screen, h_size, v_size)   {REG_MOSAIC(screen) &= (255 << 8); REG_MOSAIC(screen) |= ((h_size << 8) + (v_size << 12));}
 Régler les paramètres de la mosaic pour les sprites
#define PA_EnableSpecialFx(screen, EffectType, FirstTarget, SecondTarget)   REG_BLDCNT(screen) = (FirstTarget + (SecondTarget << 8) + (EffectType << 6))
 Activer les Effets Speciaux et choisir si les fonds et sprites l'utiliseront ou pas. On choisit aussi au passage quel Effet utiliser
#define PA_DisableSpecialFx(screen)   REG_BLDCNT(screen) = 0
 Désactiver les Effets Speciaux
#define PA_SetSFXAlpha(screen, Coeff1, Coeff2)   REG_BLDALPHA(screen) = Coeff1 + (Coeff2 << 8)
 Régler les paramètres pour l'Alpha-Blending

Description détaillée

Set the sprite special effects (alpha-blending, luminosity, mosaic effects...)

Documentation des macro

#define PA_DisableBgMosaic screen,
bg   )     _REG16(REG_BGCNT(screen, bg)) &= ~(1 << 6)
 

Désactiver l'effet de mosaic pour un fond donné

Paramètres:
screen Ecran du bg (0 ou 1)
bg Numéro du fond

#define PA_DisableSpecialFx screen   )     REG_BLDCNT(screen) = 0
 

Désactiver les Effets Speciaux

Paramètres:
screen Ecran...

#define PA_EnableBgMosaic screen,
bg   )     _REG16(REG_BGCNT(screen, bg)) |= (1 << 6)
 

Activer l'effet de mosaic pour un fond donné

Paramètres:
screen Ecran du bg (0 ou 1)
bg Numéro du fond

#define PA_EnableSpecialFx screen,
EffectType,
FirstTarget,
SecondTarget   )     REG_BLDCNT(screen) = (FirstTarget + (SecondTarget << 8) + (EffectType << 6))
 

Activer les Effets Speciaux et choisir si les fonds et sprites l'utiliseront ou pas. On choisit aussi au passage quel Effet utiliser

Paramètres:
screen Ecran...
EffectType Type d'effet. 0 pour aucun, 1 pour transparence, 2 pour augmentation de la luminosité, et 3 pour diminution de celle-ci... On peut utiliser les macors SFX_NONE, SFX_ALPHA, SFX_BRIGHTINC, SFX_BRIGHTDEC
FirstTarget Fond et sprites à afficher aevc l'effet spécial, que l'on choisi de la facon suivante : SFX_BG0 | SFX_BG1 | SFX_BG2 | SFX_BG3 | SFX_OBJ | SFX_BD (aucune idée !)
SecondTarget Fond et sprites à afficher derrière la transparence, que l'on choisi de la facon suivante : SFX_BG0 | SFX_BG1 | SFX_BG2 | SFX_BG3 | SFX_OBJ | SFX_BD (aucune idée !)

#define PA_SetBgMosaicXY screen,
h_size,
v_size   )     {REG_MOSAIC(screen) &= 255; REG_MOSAIC(screen) |= (h_size + (v_size << 4));}
 

Régler les paramètres de la mosaic pour les fonds

Paramètres:
screen Ecran...
h_size Taille horizontale de la mosaic (1 pour 1 pixel, 2 pour 2 pixels, etc...)
v_size Taille verticale de la mosaic (1 pour 1 pixel, 2 pour 2 pixels, etc...)

#define PA_SetSFXAlpha screen,
Coeff1,
Coeff2   )     REG_BLDALPHA(screen) = Coeff1 + (Coeff2 << 8)
 

Régler les paramètres pour l'Alpha-Blending

Paramètres:
screen Ecran...
Coeff1 Coefficient pour la première couche, de 0 à 31. A priori vaut mieux le mettre entre 0 et 16
Coeff2 Coefficient pour la deuxième couche, de 0 à 31. A priori vaut mieux le mettre entre 0 et 16

#define PA_SetSpriteMosaicXY screen,
h_size,
v_size   )     {REG_MOSAIC(screen) &= (255 << 8); REG_MOSAIC(screen) |= ((h_size << 8) + (v_size << 12));}
 

Régler les paramètres de la mosaic pour les sprites

Paramètres:
screen Ecran...
h_size Taille horizontale de la mosaic (1 pour 1 pixel, 2 pour 2 pixels, etc...)
v_size Taille verticale de la mosaic (1 pour 1 pixel, 2 pour 2 pixels, etc...)


Généré le Fri Oct 28 23:18:14 2005 pour PA_lib par  doxygen 1.3.9.1
@ 1.1.1.1 log @Initial import of PalibDoc, begin on PAlib0.64b @ text @@