Belgariade : construction du patch

V - Belgariade : construction du programme

Ce chapitre détaille la construction progressive d'un patch Max gérant un dispositif interactif, étape par étape. Les notions nécessaires sont rassemblée dans le chapitre précédent et seront indiquées au fur et à mesure.

Patchs de démarrage : patch_debut.zip
Médias : visuels-sons.zip
Fichier video
Patchs par étapes et médias : belgariade2.zip

1 - Organiser visuellement le patch

Captation / Décision / Action

cf Rappel du Schéma
Ces trois domaines apparaissent aussi dans le patch.

Dispositif interactif en Max

Les sons et les vidéos seront listés dans des coll, chaque fichier média étant identifié par son numéro de ligne.
Dans la zone Actions, les numéros des médias sont rappelés en commentaires sous les étapes 01 à 05b.

coll fichier.txt : cf Collections de sons et videos

visuels-sons.zip

Ordre de programmation

Cet exemple nous permet de procéder dans l'ordre le plus efficace de programmation d'un projet :

  • Créer les actions (lectures de médias)
    • Tester manuellement et corriger chaque type d'action
    • Placer des receive judicieux : prévoir les points de contrôle pour automatiser ensuite ces actions, savoir où les éléments déclencheurs seront branchés.
  • Créer le déclenchement individuel de chaque étape
    • Utiliser les send correspondant aux receive des actions
    • Regrouper chaque étape en une zone du patch
    • Regrouper tous les ordres à envoyer sur un seul point de déclenchement, un bang
    • Tester manuellement chaque étape
  • Tester manuellement les étapes pour corriger les interférences de l'une à l'autre
    • Tester dans le bon ordre et ajouter les corrections
    • Tester dans n'importe quel ordre, pour anticiper les comportements contrariants des visiteurs réels
  • Recevoir et analyser les capteurs
    • Recevoir et afficher individuellement chaque capteur
    • Faire des seuils et des comptages en fonction de chaque transition
    • Déclencher chaque étape au bon moment avec le bon capteur...
    • Gérer les interférences possibles avec des gate