Le contenu de cette page nécessite une version plus récente d’Adobe Flash Player.

Obtenir le lecteur Adobe Flash

VDP : Vidéo Display Processor

 

1) Introduction

Le VDP est le processeur graphique de la Mégadrive , C' est donc lui s' occupe de l' affichage d' une image sur la console.

Concrètement à l' inverse des consoles récentes , le VDP ne "dessine" pas l' image il envoie les données à la volée qu' il recupère dans sa mémoire vidéo.
Ce procédé se nomme Blast Processing et seule la Megadrive l' utilisait à l' époquetounge_smile


Pour pouvoir afficher une image, il utilise de nombreux paramètres/configuration/éléments d’affichage appelés : « registres VDP, palettes, scroll, planes, tiles … »

Peut-être que tout ceci n'est pas clair pour vous. Nous allons donc reprendre le tableau, point par point :

 

2) Caractéristiques

-Le VDP comporte 24 registres de 8bits destinés au paramétrage de l'affichage. Ceux-ci sont préconfigurer dans Gendev et nous n' aurons pas à nous en soucier dans un premier temps smile


-Le VDP dispose également de 4 palettes de 16 couleurs chacune.

La couleur 0de chaque palette est toujours définie  comme couleur transparente:

-dans la palette 0 le noir est défini comme couleur transparente
-dans la palette 1 le cyan est défini comme couleur transparente>
-dans la palette 2 le gris est définicomme couleur transparente
-dans la palette 3 le bleu est défini comme couleur transparente


Chaque couleur est codée sur 9 bits en 0xBGR

-          3 bits de rouge ($00X).

-          3 bits de vert    ($0X0).

-          3 bits de bleu    ($X00).

 

Il y a donc 512 possibilités maximum mad.

Exemple : je souhaite afficher la couleur rouge : 0x00F , le bleu 0xF0F , le Vert 0x0F0 , le noir 0x000 , le blanc 0xFFF et si on veut du jaune 0x0DF cool .

Le VDP n' affiche pas les images en pixels mais en Tiles :

Un tile est un carrée de 8*8 pixel soit 32 bytes

L' intégralité des tiles sont stocker dans la Vram une mémoire vidéo de 64Ko (64*1024 bytes maxi)  qui peut  donc contenir un maximum de 2048 tiles (64*1024/32 = 2048 tiles)


Le VDP affiche ses Tiles sur des Planes : Une Plane ( Playfield) est un plan qui peut se représenter comme un calque plus grand que l' écran.

le VDP dispose de 3 Planes: la Plane A , La Plane B et la Plane Window.

- La Plane A et la Plane B sont chacunes scrollable horizontalement et verticalement :

2 tiles par 2 tiles sur la Vertical
Tiles par Tile sur l Horizontal

- La Plane Window elle n' est pas scrollable à l' affichage elle se superpose la Plane A , ont l' utilise donc souvent que pour l affichage des vies , des scores....

Le VDP affiche les Tiles sur la plane en partant du haut à gauche en direction du bas à droite.

Quelques exemples pour bien comprendre :

Plane A+ Plane B:

seulement la Plane A:

Aucune Plane:

Bizarre, Bizarre il n' y a aucune Plane et pourtant il reste des éléments ??? confused

Les éléments qui reste sur la dernière image se nomment des Sprites:

un Sprite est une unité indépendante en position : ce sont donc des éléments qui se déplacent cool

Le VDP peut gérer jusqu' a 80 Sprites  avec chacun une résolution max de 32*32 pixels

Chaque sprite affiché est numéroté avec un ID dans la SpritList , celle liste est stockée dans un des registres du VDP:

Les Sprites y sont donc classé par ordre avec plusieurs infos : comme la palette utiliser , leur position X Y ou encore leurs nombres de tiles.

Donc pour afficher un Sprite le VDP va lire cette liste et va suivre à chaque fois l ID du sprite à ajouter.

Voila qui devrait cloturer cette partie sur le VDP et par la même occasion la théorie .......En effet durant le second chapitre vous compilerez une démo test tongue