Complement de la doc

This commit is contained in:
Leopold Clement 2021-07-18 16:31:23 +02:00
parent c7cbbad9ca
commit 68bff94774
4 changed files with 29 additions and 5 deletions

18
docs/bitmap.md Normal file
View file

@ -0,0 +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.
## Utilisation
L'usage du script est simple, ainsi pour crée 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.
## 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.
!!! info
Il faut absolument que l'image ais une largeure multiple de 4, sinon un bug d'affichage déformant l'image se produit.

View file

@ -9,6 +9,5 @@ Les monstres sont rangés sur trois rangs
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.
## Bitmap
``` 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 --VAR_NAMES tex_coeur_E tex_coeur_F tex_joueur tex_ennemi_1 tex_ennemie_2
```
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).

BIN
docs/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 438 B

View file

@ -1,7 +1,9 @@
site_name: Space Invader's
site_url: https://example.com/
repo_url: https://gitlab.com/leopold_clement/Space_Invaders
theme: material
theme:
"name" : "material"
"logo" : "logo.png"
nav :
- 'Home' : 'index.md'
@ -10,16 +12,21 @@ nav :
- 'Thread' : 'thread.md'
- 'Classe' : 'class.md'
- 'Perriphériques' :
- 'Ecran' : 'lcd.md'
- 'Aléatoire' : 'rng.md'
- 'Leds' : 'led.md'
- 'Joystick' : 'joystick.md'
- 'Affichage' :
- 'Ecran' : 'lcd.md'
- "Génération de l'header" : 'bitmap.md'
markdown_extensions:
- admonition
- pymdownx.arithmatex:
generic: true
- pymdownx.superfences
- pymdownx.emoji:
emoji_index: !!python/name:materialx.emoji.twemoji
emoji_generator: !!python/name:materialx.emoji.to_svg
extra_javascript:
- javascripts/config.js