Pages : [01] [02] [03] [04] [05] [06] [07] [08] [09] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21]

Eléments graphiques

L'élément basique important de cette démo est la ball. Comme indiqué dans le cahier des charges, elle est en mode BITMAP 4 et ne doit donc contenir que 3 couleurs (la 4ieme couleur étant le noir, et reservée pour le fond d'ecran).



De facon à garantir une bonne résolution des objets que ces balls composeront, la résolution d'une ball sera de 8x7 pixels. Le choix de la resolution horizontale de 8 pixel n'est pas pris au hasard, car l'écran est lui meme composé de suites de blocs de 8 pixels horizontaux. Un pixel supplémentaire rajouterait des calculs dont nous n'avons pas vraiment besoin. Le choix de la résolution verticale de 7 pixels a été basée sur le dessin général de la ball qui semble meilleur. Nous aurions pu choisir 8 pixels a vrai dire, mais il faut prendre en compte le fait que cela rajouterait aussi des calculs supplémentaires. Puisque la ball apparait bien en 7 pixels verticaux, autant garder cette valeur.


Le titre sera quand a lui organisé de facon verticale, de facon à laisser une zone carrée pour l'affichage des objets animés. Une zone rectangulaire aurait posée un problème de chevauchement lors de certaines rotations avec le titre, ainsi que des objets sortant de l'ecran, et qui aurait du etre pris en compte lors de l'affichage, impliquant à nouveau des calculs supplémentaires (clipping).




Le nombre de couleurs etant de 3 au maximum, nous defineront 2 teintes de rouge (Rouge comme la Chine), et un blanc pour permettre un pseudo effet de lumiere. La palette sera définie par les valeurs suivante : 0,4,14,4095. Nous la créerons alors avec la routine suivante :


  * Définition de la palette
       
  LDA #0 * Pointeur couleur x 2
  STA $E7DB  
  LDD #0 * Couleur 0
  STB $E7DA  
  STA $E7DA  
  LDD #4 * Couleur 1
  STB $E7DA  
  STA $E7DA  
  LDD #14 * Couleur 2
  STB $E7DA  
  STA $E7DA  
  LDD #4095 * Couleur 3
  STB $E7DA  
  STA $E7DA  
       

© PULS 2004-2019