Alors pour les niveaux de gris :
GrayOn(); / / Active le mode niveaux de gris
Donc tu le mets au début, après les déclarations de variables et le clrscr() dans le main;
GrayOff() / / Arrête le mode niveaux de gris
Tu le mets avant de quitter donc.
Ensuite, les routines graphiques sont les mêmes sauf que :
Pour les DrawLine, DrawPix, DrawStr . ..
Il faut faire précéder ces instruction par :
GraySetAMSPlane( . .. ) ; / / . .. est soit DARK_PLANE, soit LIGHT_PLANE
Pour tracer une ligne en gris clair par exemple :
void _main( void )
{
clrscr();
GrayOn();
GraySetAMSPlane( LIGHT_PLANE ) ;
DrawLine( 10, 10, 20, 20, A_NORMAL ) ;
ngetchx();
}
Et pour les sprites, tu remplace le " LCD_MEM" dans les paramètres par GrayGetPlane(...) :
Ex de ligne :
Sprite8 ( 30, 30, 8, imask, GrayGetPlane( DARK_PLANE), SPRT_AND);
Voila : pour afficher un sprite en niveaux de gris, tu appelle 2 fois la fonction : 1 fois pour le gris foncé et une deuxième pour le gris clair, ce qui implique d´avoir un sprite pour les gris clair et un pour les gris foncés.
Certains programmes peuvent te faciliter la tâche pour créer des sprites en te sortant directement les codes hexas à partir du dessin que tu réalise.
Va voir sur ticalc.org pour un logiciel de ce type PC, sinon le même genre on-calc :
http://tnt.calcware.org/main.php?disp=sprite
Voila 