Correction de la doc
parent
68bff94774
commit
4f0b62d977
@ -1,18 +1,18 @@
|
||||
# Génération d'```image.h```
|
||||
|
||||
Pour utilisé les bitmaps dans le code, il fait convertir les ```.bmp``` en un ```.h```. Pour cela, on utilise un script python dévelopé pour l'ocasion : ```BmpToHConvertor.py```. Il permet de composé un header comportant autant de bitmap que voulue.
|
||||
Pour utiliser les bitmaps dans le code, il faut convertir les ```.bmp``` en un ```.h```. Pour celà, on utilise un script python dévelopé pour l'occasion : ```BmpToHConvertor.py```. Il permet de composer un header comportant autant de bitmaps que voulus.
|
||||
|
||||
## Utilisation
|
||||
|
||||
L'usage du script est simple, ainsi pour crée notre ```image.h```, nous avons utilisé la commande suivante :
|
||||
L'usage du script est simple, ainsi pour créer notre ```image.h```, nous avons utilisé la commande suivante :
|
||||
``` bash
|
||||
python3 BmpToHConvertor.py --HEADER_NAME Core/Inc/images --INPUT_FILE asset_brut/Coeur_E.bmp asset_brut/Coeur_F.bmp asset_brut/Joueur.bmp asset_brut/Ennemi_1.bmp asset_brut/Ennemi_2.bmp asset_brut/Ennemi_3.bmp asset_brut/Ennemi_4.bmp --VAR_NAMES tex_coeur_E tex_coeur_F tex_joueur tex_ennemi_1 tex_ennemi_2 tex_ennemi_3 tex_ennemi_4
|
||||
```
|
||||
Bien qu'elle soit longue, elle ne fait que lister les fichier d'entrés et le nom des varriables de sortie.
|
||||
Bien qu'elle soit longue, elle ne fait que lister les fichiers d'entrée et le nom des variables de sortie.
|
||||
|
||||
## Contrainte sur les images
|
||||
|
||||
Pour que les images soit compatibles, il faut que elles soit enregistre avec un codage ```R5G6B5``` sur 16 bits. De plus, il ne faut pas utiliser de pallette de couleur.
|
||||
Pour que les images soit compatibles, il faut que elles soient enregistrées avec un codage ```R5G6B5``` sur 16 bits. De plus, il ne faut pas utiliser de pallette de couleur.
|
||||
|
||||
!!! info
|
||||
Il faut absolument que l'image ais une largeure multiple de 4, sinon un bug d'affichage déformant l'image se produit.
|
||||
Il faut absolument que l'image ait une largeur multiple de 4, sinon un bug d'affichage déformant l'image se produit.
|
@ -1,23 +1,23 @@
|
||||
# Classe
|
||||
# Classes
|
||||
|
||||
Les classes utilisées sont les suivantes :
|
||||
|
||||
![Diagramme de classes](class.svg)
|
||||
|
||||
## Classe de representation
|
||||
## Classe de représentation
|
||||
|
||||
Pour representer les élements dans le jeu, on utilise les classes :
|
||||
Pour représenter les éléments dans le jeu, on utilise les classes :
|
||||
|
||||
- ```Joueur``` qui n'est instancier qu'une seule fois, et qui represente le joueur,
|
||||
- ```Joueur``` qui n'est instanciée qu'une seule fois, et qui représente le joueur,
|
||||
|
||||
- ```Monster``` qui represente les monstres,
|
||||
- ```Monster``` qui représente les monstres,
|
||||
|
||||
- ```Missile``` qui represente les projectiles.
|
||||
- ```Missile``` qui représente les projectiles.
|
||||
|
||||
Des instances de la classe ```Missile``` sont memebres des deux autres classes car elles representent les projeciles de basse.
|
||||
Des instances de la classe ```Missile``` sont membres des deux autres classes car elles représentent les projectiles de base.
|
||||
|
||||
De plus, les threads ```Joueur_1``` et ```Block_Enemie``` envoie des objet ```Missile``` dans la ```queue_N``` vers le thread ```Projectile``` pour lui signaler les nouveaux missiles à simuler.
|
||||
De plus, les threads ```Joueur_1``` et ```Block_Enemie``` envoient des objets ```Missile``` dans la ```queue_N``` vers le thread ```Projectile``` pour lui signaler les nouveaux missiles à simuler.
|
||||
|
||||
## Classe de messagerie
|
||||
|
||||
Les classes utiles pour les messages sont ```struct Collision``` qui peremt de transmetre toutes les informations relatives à un choc avec un monstre en même temps, et la class ```enum End_Type``` qui décrit le type de fin de vague que l'on rencontre (défaite des monstre ou du joueur).
|
||||
Les classes utiles pour les messages sont ```struct Collision``` qui permet de transmettre toutes les informations relatives à un choc avec un monstre en même temps, et la classe ```enum End_Type``` qui décrit le type de fin de vague que l'on rencontre (défaite des monstres ou du joueur).
|
@ -1,3 +1,3 @@
|
||||
# Joystick
|
||||
|
||||
On réaliste un seuillage autour de la valeur centrale. Le joystick n'est pas vraiment annalogique, il n'y a que 8 directions possibles.
|
||||
On réalise un seuillage autour de la valeur centrale. Le joystick n'est pas vraiment annalogique, il n'y a que 8 directions possibles.
|
@ -1,13 +1,13 @@
|
||||
# L'écran
|
||||
|
||||
## Organisation de l'écran
|
||||
Les dix pixel en haut de l'écran sont reservés pour l'affichage des informations.
|
||||
Les dix pixels en haut de l'écran sont reservés pour l'affichage des informations.
|
||||
|
||||
Les monstres sont rangés sur trois rangs
|
||||
|
||||
## Mutex
|
||||
Pour ne pas aoir de problème d'interruption entre les threads pendant la manipulation de la mémoire de l'écran, on utilise un mutex ainsi que une série de fonction permetant de faire automatiquement l'attente et le relachement du mutex.
|
||||
Pour ne pas avoir de problème d'interruption entre les threads pendant la manipulation de la mémoire de l'écran, on utilise un mutex ainsi qu'une série de fonctions permettant de faire automatiquement l'attente et le relachement du mutex.
|
||||
|
||||
## Bitmap
|
||||
Toutes les textures sont stoké dans ```image.h```. Les textures des coeurs et du joueur sont utilisé dirrectement, alors que pour les 4 texture des monstres, on utilise une liste de pointeur vers les textures. Ainsi, on peut changé rapidement la texture utilisé par les monstres pour avoir des sorte d'annimation.
|
||||
La generation des bitmap est abordé dans un [partie dédiée](bitmap.md).
|
||||
Toutes les textures sont stokées dans ```image.h```. Les textures des coeurs et du joueur sont utilisées directement, alors que pour les 4 textures des monstres, on utilise une liste de pointeurs vers les textures. Ainsi, on peut changer rapidement la texture utilisée par les monstres pour avoir des sortes d'animation.
|
||||
La génération des bitmaps est abordée dans une [partie dédiée](bitmap.md).
|
||||
|
Loading…
Reference in New Issue