Ponts OSC entre logiciels
Entre Max et Blender
|
Comment connecter Max et Blender ?
Il est bon de rappeler dans un premier temps que Max n'a pas d'objet permettant de connecter directement Blender et celui ci. Blender non plus ne dispose pas de ce genre de fonctionnalité de base. Il va donc falloir passer par l'installation d'un addon tierce sur Blender, appelé "NodeOSC". L'environnement de développement Python sur lequel est développé blender va lui permettre une grande variété de possibilité, autant au niveau connectique possible qu'avec sa grande possibilité de modularisation. node osc fonctionne sur un server Python qui va communiquer en protocole OSC avec Max.
Si le server Py OSC ne reçois pas les informations de Max essayez d'éteindre et de rallumer le server.
Premièrement, où trouver Node OSC ? et comment l'installer :
Rendez-vous sur : cf Auteur Github afin de pouvoir télécharger l'extension Blender
- Si vous rencontrez des difficultés, vous trouverez ici un tuto qui détail la démarche à suivre afin de l'installer cf Tutoriel explicatif
Transmission de Max vers Blender
1 - Présentation de la fenêtre Node OSC
Sur blender cet addon va se manifester sous la forme d’une fenêtre.
Cette fenêtre va être divisé en 3 partie, une partie NodeOSC Server, une partie custom message et Node messages. Cet fenêtre s'apparente l'onglet Objet ou Caméra qui sont similaire et affiches des données générale utile pour manipuler la scéne de votre modélisation 3D.
2 - NodeOSC Server
La fenêtre « NodeOSC server » est une fenétres qui va contenir diverses informations. Dont certaines avec des informations capitales au bon fonctionnement de l’addon. Premièrement start et ensuite In et Out.
Start est comme sous entendu le bouton pour lancer le server de sur lequel max et blender vont communiquer, ensuite In et l’adresse à laquelle blender va écouté et va donc recevoir des informations. Dans Out l’adresse à laquelle blender va envoyer des information.
3 - Adresse Locale et Renseignement du Port de Communication Blender.
127.0.0.1 est l’adresse locale de chaque ordinateur et va donc permettre à des logiciels de communiquer en local dans la machine.
Assurez vous que le port du logiciel avec lequel vous voulez communiquer et blender communique bien sur le même port d’entré ainsi que de sortie celon ce que vous désirez faire.
Nous avons ensuite « Input Rate» et « Output Rate » ils sont tous deux des observer de données et vont réguler le temps auquel Blender doit rafraichir sa réception de donné et sa production de donné.
Les filtres, filtrent les messages, si ils sont activé blender fera en sorte soit de ne pas répéter le même message soit de ne pas réceptionner le même message.
« Start at Launch » lance le server python au démarrage de Blender.
Parfois cette fonctionnalité peut entraîner le dysfonctionnement du server Python, si c'est le cas redémarrer celui-ci.
4 - Custom Messages.
- **Custom Messages fonctionne en deux temps.
Premièrement choisissez une valeur de blender que vous souhaitez rattaché à un nœud. Cette valeur peut être: Une positions, le nombre de frames, la rotation, la valeur d’une shape key.
- Dans un second temps voyez le nouveau message que vous venez de créer dans « custom message ». l’adresses représente la dénomination de la chose que vous voulez modifier avec le pont osc.
Vous pouvez aussi voir que l’export et l’import en fichier JSON est possible si vous voulez sauvegardez la customisation que vous avez effectuer sur message osc que vous avez créer, ainsi vous pourrez les exportez sur d’autres machines.
Node Messages est plus spécial et optionnel.
Effectivement cet élément n’est utilisable à son plein potentiel uniquement quand il est additionner à animation nodes, une autres extension disponible sur blender 4.1 et qui va créer des nœud d’animation.
Communication de Max vers Blender coté Max :
Max communique avec blender via l'intermédiaire de l'objet udp receive cet objet racroché à une adresse ip local sera la clé de voute de la communication entre les deux logiciel. les informations qui peuvent transiter de leurs communications peuvent tout autant être d'ordre du slider que du boutons que de l'information complexe comme avec Scale par exemple. Cependant le protocole OSC est assez modulaire et permet de faire passer bien d'autres information numérique, mais aussi des texture ou des position.
La communication se fait généralement sans latence, veillez cependant à utilisez des modèles simple au niveaux des texture ainsi que des polygone si votre ordinateur ne dispose pas de la puissance nécessaire pour de l'animation Blender.
Capture d'écran du Patch Max tutoriel présentant le message objet qui va concerner donc un objet blender, suivi de scale qui va faire réagir la taille du cube. j'ai rajouter X à la fin de l'adresse de l'objet blender afin de préciser qu'il devait bouger dans la position attribuer à l'axe x de blender. Il y a 2 autres messages Max/MSP qui contrôlent l'axe Y et Z.
Capture d'écran du Patch Max tutoriel présentant l'objet Udpsend suivi de l'adresse Ip Locale 127.0.0.1 suivi du port 9001
tout objet dans blender ayant une valeur numérique peut théoriquement être contrôlé par Max ou tout autre logiciel de programmation ayant accès à des ponts réseaux.
Exemple de projets utilisant la relation Max et Blender :
Mise en application du couple Blender/Max via un projet développer par Bryan Madi de la licence Evman montrant l'application au niveau d'une extension de reconnaissance vocale de powershell permettant à max via un server Websocket de comprendre une liste de mots prédéfini : cf Projet Text To Speech
Mise en application du couple Blender/Max via un projet du même auteur mettant en place un objet se mouvant dans l'espace grâçe à des capteur de volume sonore, anémomètre, capteur de de pression au touché, ainsi qu'un micro : cf Projet Donuts