Pour que le patch reste lisible, nous n'allons pas tirer des ficelles partout. Nous utiliserons les objets send
et receive
pour remplacer les ficelles et pour envoyer des signaux à l'intérieur des sous-patchs.
cf Objets Max utiles, Organisation visuelle du patch
Cette étape consiste à ajouter des receive à tous les points de contrôle intéressants dans la zone d'actions.
Certains événements doivent de plus être déclenchés une seule fois, au début : démarrage automatique.
cf Objets Max utiles, Démarrage automatique
p visuels
r photo
r lum
r init_video
r init_boucle
.p sons
r son
r stop_son
r boucleson
r debut_son
Poser les send correspondants et y brancher des messages pour tester.
Sous-patch p debut
Objet trigger
cf Diffusion de médias en Max
Un bang déclenche tous les événements de la première étape via un t b b b b b b b
, un long trigger qui permet de déclencher de multiples actions si elles doivent se faire dans un ordre précis.
Sorties surnumémaires : anticiper des corrections futures pour ne pas avoir à recâbler.
Test : fermer et ouvrir le patch, cliquer sur le bang
et vérifier si la photo et le son adéquats se lancent.
La structure est exactemenet la même : un bang sur un long trigger.
1
sur s boucleson
Nous activons un metro 1000
qui active un compteur toutes les secondes.
Tant que le toggle
est à 1, le counter
compte de 2 à 5 en boucle.
Le nombre résultant est envoyé au choix d'image.
Le son n'est joué qu'une fois à cette étape.
Empêcher la boucle.
La variation de luminosité dépendant du capteur, elle sera implémentée plus tard.
Il faut désactiver le metro de l'étape 02 sinon les cartes reviennent...
Le son étant celui de la video, il faut arrêter le son précédent si jamais il est encore en train de se jouer.
Dans notre cas, le fait de passer de l'étape 02 vers la 01 montre qu'il manque une sécurité sur la gestion de la boucle des cartes.
Depuis l'étape 01, envoyer un message 0
sur le metro 1000
de l'étape 02. Le défilement descartes est désormais restraint à l'étape 02.
Nous pourrions renforcer cette sécurité en envoyant un message 0 depuis toutes les autres étapes, mais la méthode de programmation employé dans la page suivante assure en fait qu'il ne peut y avoir de transition par exemple de 02 à 04 ou 05.