Espace GX 4000

Le 1er forum dédiée aux consoles méconnues/étranges/rares et à l'Amstrad GX 4000
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  

Partagez | 
 

 Sprites Hardware

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
eliot



Nombre de messages : 11
Age : 40
Localisation : Normandie
Date d'inscription : 04/04/2008

MessageSujet: Sprites Hardware   Mar 8 Avr - 1:58

L'ASIC est le composant spécifique à la GX 4000 qui permet de gérer quasiment tout ce qui fait qu'une GX 4000 n'est pas un CPC 464 de base ! Par exemple, la GX 4000 gère 16 sprites Hard s'affichant sur le décor sans l'altérer. Un peu de théorie !

Dimension
Chaque sprite est une matrice de 16 sur 16, soit 256 (&100) octets par sprite, soit 4096 octets pour l'ensemble.

En mémoire
Ces 16 sprites, numérotés de 0 à 15, sont stockés dans l'ASIC à partir de &4000 pour finir en &4FFF.

Sprite 0 : &4000 -> &40FF
Sprite 1 : &4100 -> &41FF
.... .... ....
Sprite 15: &4F00 -> &4FFF

Palette
La palette, commune à l'ensemble des sprites (sauf bidouilles), comporte une encre transparente (encre 0) et 15 encres dont les couleurs sont à choisir parmi les 4096 disponbiles. La palette pour les sprites est totalement indépendante de celle de l'arrière plan. On peut donc compter 31 couleurs à l'écran, sans bidouille. 16 pour le fond, 15 pour les sprites.

Position
Les coordonnées à l'écran de chaque sprite sont stockées sur 4 octets : 2 pour X, 2 pour Y. Et ça se passe toujours dans l'Asic !

----------------X---------Y-----
Sprite 0 : &6000 - &6002
Sprite 1 : &6008 - &600A
........ ....... ......
Sprite 15 : &6078 - &607A

Zoom
Chaque sprite a ses propres paramètres de zoom, en X et en Y, totalement indépendants l'un de l'autre! D'où des effets possibles d'étirements horizontaux ou verticaux (ex : éclairs dans ROBOCOP 2).

Cela se trouve dans l'ASIC aux adresses suivantes :

Sprite 0 : &6004
Sprite 1 : &600C
........ .......
Sprite 15 : &607C

Bidouilles
Quelques bidouilles possibles qui permettent d'entrevoir que peu de choses ont vraiment été utilisées dans les jeux GX 4000 !

- Le contenu d'un sprite peut-être modifié en écrivant dans la zone mémoire lui correspondant dans l'ASIC.
- Un sprite hard peut être affiché plusieurs fois à l'écran en changeant la valeur de ses positions X et Y en cours de balayage.
- La palette des sprites peut être changée en cours de balayage.
- Les sprites hard peuvent être automatiquement répétés par des techniques hardware.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://www.binarysciences.com
BDCIron



Nombre de messages : 19
Age : 36
Date d'inscription : 18/09/2008

MessageSujet: Re: Sprites Hardware   Jeu 18 Sep - 21:47

Attention cependant pour les techniques hardware de réplication des sprites.

La position de ceux-ci est fonction des registre CRTC et en dépend totalement. Ainsi, si sur une ligne a ligne (R4 et R9=0), les sprites ce dupliquent normalement (toujours la même ligne des sprites seront affichés si on ne les bouges pas), ce n'est plus le cas sur de la RVMB.
En effet, le compteur de ligne en RVMB est incrémenté (sinon pas d'interet d'en faire). Ainsi, pour un ecran divisé en 4 blocs par ligne, le premier bloc si le sprite est positionné en Y=0 correspondra bien à la premiere ligne du sprite. En revanche sur le deuxième bloc nous aurons bien la deuxième ligne du sprite !!! Sur le 3ème la troisième etc...

Que du bonheur cette machine Very Happy
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
 
Sprites Hardware
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» One Piece Sprites
» Sprites Doom 64 ?
» [sprite]Quelques banques de sprites sympas
» Sprites Discworld 2
» Mes sprites de mon future jeu

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Espace GX 4000 :: Espace dédié à l'Amstrad GX 4000 :: Les spécificités de la GX 4000-
Sauter vers: