Dans MobiNet, on programme le comportement de différents mobiles: ce sont les différents objets visibles (qu'ils bougent ou non!). L'interface permet de régler tous les comportements du mobile courant: aspect, mouvement, règles de collision avec les bords ou les autres mobiles... (on commute ensuite d'un mobile à l'autre).
Aspect général de l'écran (cliquer pour agrandir).
Les différentes zones sont détaillées un peu plus loin.
Ici on a programmé 7 mobiles: la balle, les raquettes, les buts,
les compteurs.
- La balle suit une trajectoire rectiligne, et rebondit sur les bords
et les raquettes.
- Les raquettes suivent la souris verticalement.
L'une des raquettes (ainsi que le but et le compteur correspondant)
est en fait gérée sur une autre machine: deux utilisateurs
partagent ici leurs mobiles en réseaux. L'un gère les rouges et la balle,
l'autre les bleus.
- Les buts enregistrent les collisions avec la balle, et déclenchent
les compteurs adverses.
- Les compteurs s'incrémentent quand les buts le leur signalent.
.
En cliquant sur `afficher les noms', on voit les numéros des mobiles
(local n s'il est sur la machine, n@m s'il est géré par la machine m),
ainsi que le système de coordonnées (de -100 à 100 pour les x et les y).
.
Paramètres représentant le mobile courant (ici, la balle):
position, dimension, icône, couleur, orientation...
(de plus on va utiliser dx,dy pour indiquer la direction du mouvement.)
NB: en réalité tout est numérique (e.g. l'icône de la balle est le numéro 16),
ce qui permettra de faire des opérations.
Programmation du mouvement: consiste à décrire les changements à faire
entre 2 images successives (env. tous les 25eme de seconde),
par "tel_paramètre: nouvelle_valeur".
Voir le manuel du langage
pour le choix des commandes utilisables dans les zones de programmation.
On peut faire des petits mouvement successifs (`dynamique'),
décrire une fonction du temps (`cinématique'), ou de la souris,
voire dépendant de la position des autres mobiles (e.g. poursuite),
ou toute combinaison programmée selon l'inspiration.
(NB: on dispose d'un choix de comportements prédéfinis où piocher si on le souhaite. Ces presets sont stockés dans un fichier texte,
un animateur peut donc facilement les modifier.)
Quoi faire quand on touche un bord.
Quoi faire quand on collisionne un autre mobile.
Si nécessaire, on peut choisir un comportement différent
selon l'identité du collisionneur.
(traduction: si l'icône du collisionneur est une raquette, alors...)
Valeur des paramètres au (re)démarrage.
NB: on peut dire de se redémarrer (e.g. en cas de collision) ou
de redémarrer un autre mobile (e.g. pour déclencher un compteur, un tir, remettre la balle en jeu...)
avec l'instruction restart num.
C'est une façon d'envoyer des messages entres mobiles.
(srnd donne un nombre au hasard entre -1 et 1.)
Créer un nouveau mobile, choisir sur lequel on travaille, etc.
Affichage du résultat.
Lire, écrire, interagir avec d'autres machines en réseau...
On choisit d'une part les mobiles que l'on exporte (i.e. que l'on rend
visible sur le réseau), et d'autre part les machines dont on importe
les mobiles.
On dispose donc de plusieurs modes de travail:
- travail indépendant sur chaque poste.
- visionnage de n'importe quel poste depuis le poste maître.
- visionnage superposé de tous les postes (e.g. pour projection murale).
- travail en binômes ou en trinômes (ou autre).
- travail collectif sur N postes (pas forcément sur le réseau local).
Et voilà ! plutôt facile, non ?
|