[Tutoriel]Guide du débutant de Petit Computer - Partie 8 Son et musique

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

[Tutoriel]Guide du débutant de Petit Computer - Partie 8 Son et musique

Message par J8B le Ven 20 Nov - 21:02

13)Apprendre à utiliser du son et de la musique
a)Lancement

Petit computer possède ses propres sons et musiques en mémoire. Pour les lancer, on a pour les sons la
commande BEEP suivi d'un numéro allant de 0 à 69, et pour la musique on a la commande BGMPLAY suivi d'un numéro
allant de 0 à 29.
Code:
BEEP 69 'un petit chat miaule
BGMPLAY 1 'une musique est jouée

b)Manipulation
En plus de jouer un son ou une musique, ces deux commandes peuvent altérer la façon dont ils vont être entendus.
Pour cela quelques paramètres supplémentaire peuvent leur être ajoutés.
Commençons avec les sons, BEEP suivi du numéro du son de 0 à 69, peut être suivi ensuite par un numéro de
-8192 à 8192 symbolisant le pitch qui modifie l'octave joué, puis par un autre numéro de 0 à 127 symbolisant le
volume du son, et enfin suivi par encore un numéro allant de 0 à 127 symbolisant le panpot qui indique
de quel côté des haut-parleurs le son va être joué.
Code:
BEEP 69,-8000,127,0 'un chat miaulera de façon grave à gauche des haut-parleurs
Maintenant voyons la musique, cela diffère un peu d'avant, ici BGMPLAY sera d'abord suivi d'un nombre allant de
0 à 7 symbolisant la piste sur laquelle il va être lu ce qui veut dire que 8 musiques peuvent être joué en même
temps, ensuite elle sera suivi du numéro de la musique joué de 0 à 29, et enfin du volume de la piste de 0 à 127.
Code:
BGMPLAY 0,0,64 'la musique 0 sera jouée sur la piste 0
WAIT 120
BGMPLAY 1,2,127 'la musique 2 sera jouée sur la piste 1
Vous entendez que la musique 0 et 2 sont jouées en même temps.

c)Baisse la musique
Il y a un autre moyen de baisser le son d'une musique, c'est en utilisant la commande BGMVOL suivi d'un nombre
de 0 à 7 pour la piste, puis d'un nombre de 0 à 127 pour le volume. (Par défaut les musiques se joue toujours
sur la piste 0 si elle n'est pas spécifiée)
Code:
BGMPLAY 0,0,64 'la musique 0 sera jouée sur la piste 0
WAIT 120
BGMPLAY 1,2,127 'la musique 2 sera jouée sur la piste 1
WAIT 120
BGMVOL 1,32 'la musique 2 sera jouée moins forte

d)Stoppe la musique
La musique tourne en boucle, ça me rend fou !! Mais au lieu de jeter votre console contre le mur, on peut
utiliser la commande BGMSTOP qui arrête net toutes musiques sur n'importe quelle piste.
Code:
BGMPLAY 0,0,64 'la musique 0 sera jouée sur la piste 0
WAIT 120
BGMPLAY 1,2,127 'la musique 2 sera jouée sur la piste 1
WAIT 120
BGMSTOP 'C'est devenu silencieux
On peut aussi très bien spécifié le numéro de la piste à la suite si on veut, ainsi qu'un temps de fondu en
secondes.
Code:
BGMPLAY 0,0,64 'la musique 0 sera jouée sur la piste 0
WAIT 120
BGMPLAY 1,2,127 'la musique 2 sera jouée sur la piste 1
WAIT 120
BGMSTOP 1,5 'Plus qu'une musique est joué au bout de 5 secondes

e)Vérification
Vous ne vous souvenez plus quelle piste a été donnée pour une musqiue, pour connaitre quelle piste est en train de
jouer une musique, il suffit de les tester avec la commande BGMCHK suivi entre parenthèses du numéro de la piste.
Si une musique est joué elle renverra la valeur TRUE sinon la valeur FALSE.
Code:
BGMPLAY 0,0,64 'la musique 0 sera jouée sur la piste 0
WAIT 120
BGMPLAY 1,2,127 'la musique 2 sera jouée sur la piste 1
? BGMCHK(1) 'La valeur TRUE sera renvoyée
WAIT 120
BGMSTOP 1 'Plus qu'une musique est joué
? BGMCHK(1) 'La valeur FALSE sera renvoyée
? BGMCHK(0) 'La valeur TRUE sera renvoyée

f)Maintenant faites des tests !!!
Le meilleur moyen de résoudre vos questions est de faire des tests. N'hésitez pas à tester toutes ces
commandes, à écouter ce que cela fait. Vous avez un large panel de sons et de musiques, le mieux est de trouver
un programme indiquant le numéro de chaque, ou vous pouvez aussi faire le vôtre. Que la musique soit en vous.


14)Interro 3 : Faire un programme simple avec graphique et sons
Sortez vos consoles, c'est l'heure de l'interro !!
Problème 1:
Il faut faire un clavier sur le GRP de l'écran tactile qui lorsqu'on y appuie dessus, fait jouer différents sons.

Problème 2:
Vous vous souvenez du deuxième problème de l'interro 1 et 2:
Vous allez faire avancer avec les touches et avec l'écran tactile, un personnage sur l'écran du haut.
Son but sera de ramasser 7 objets par terre pour changer de couleur. Une fois les 7 objets ramassés,
un arc en ciel appraîtra et finira le jeu.
Menu titre obligatoire (Titre par défaut: Les 7 objets du ciel).
Cette fois il faudra y intégrer du son et utiliser le graphique pour faire apparaitre l'arc en ciel à la fin.

16)Examen Débutant : Faire un programme utilisant toutes les commandes apprises
a)Récapitulatif

Résumons ce qu'est un programme:
Nous avons tout d'abord une partie d'initialisation, qui consiste à charger les ressources et à indiquer les
valeurs initiales de nos variables.
Puis nous avons une partie d'affichage, qui consiste à placer les éléments sur l'écran, que ce soit textes,
sprites, background ou GRP.
Ensuite vient la partie d'interaction, qui consiste à indiquer ce que fait le joueur lorsqu'il appuie sur un
bouton, ou le déplacement d'intelligence artificielle (IA). Elle est toujours dans une boucle de type GOTO.

Partie d'initialisation
@Label1
Partie d'affichage
@Label2
Partie d'interaction
GOTO @Label2


Dans un programme il peut y avoir plusieurs parties d'interactions et d'affichage, notamment pour des menus
de toutes sortes par exemple.

b)Une dernière commande pour la route
Dernière commande à connaitre RND suivi entre parenthèses d'un nombre. Elle permet de tirer au hasard un nombre
entre 0 et le nombre maximum moins 1. On peut l'associer à une variable.
Code:
?RND(9) 'renvoie un nombre entre 0 et 8
X=RND(256)
?X 'renvoie un nombre entre 0 et 255

Il y a encore d'autres commandes de Petit Computer à découvrir, je ne vous ai donné que les principales qui
sont le plus utilisées.

c)Exam
Vous êtes libre sur le sujet, faites un jeu et proposer-le à la communauté. Vous pouvez vous inspirer d'un
vieux jeu 8bits, d'un jeu de société ou d'un sport.
Une fois réussi, vous pouvez vous considérer comme programmeur Amateur !!


< PARTIE 7  - SOMMAIRE -

_________________
Statut (MàJ:04 Août 2017): Sur le projet "Virtual Bébête" (avancée ~28% Démo_B3).
Mes BDs et mes dessins, c'est sur Webcomics, http://www.webcomics.fr/member/J8B

And i'm here too: http://petitcomputer.wikia.com/wiki/User:J8B
avatar
J8B

Messages : 405
Date d'inscription : 27/10/2013
Localisation : Tarn

Voir le profil de l'utilisateur http://webcomics.fr/member/J8B

Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum