Wiki

Reso-nance numérique | Arts et cultures libres

Outils du site


projets:gdevelop-osc:accueil

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
projets:gdevelop-osc:accueil [2019/07/15 18:58]
laurent [Titre du projet]
projets:gdevelop-osc:accueil [2019/07/15 19:10] (Version actuelle)
laurent [Principes de fonctionnement]
Ligne 3: Ligne 3:
   * Date : 15/07/2019   * Date : 15/07/2019
   * Licence : libre !   * Licence : libre !
-  * Contexte : +  * Contexte : oui
   * Fichiers : {{ :projets:gdevelop-osc:exgdevelop.zip |exemple Gdevelop (html5)}} {{ :projets:gdevelop-osc:projetgdevelop.zip |projet Gdevelop}}   * Fichiers : {{ :projets:gdevelop-osc:exgdevelop.zip |exemple Gdevelop (html5)}} {{ :projets:gdevelop-osc:projetgdevelop.zip |projet Gdevelop}}
  
Ligne 15: Ligne 15:
  
 ===== Technos ===== ===== Technos =====
-Pour pouvoir répondre à une requête GET ou POST envoyée par Gdevelop, il faut utiliser un serveur web. L'utilisation du module python [[https://pypi.org/project/Flask/|Flask]] permet de créer un serveur web en quelques lignes de codes qui répondra aux requêtes. L'OSC sera géré par [[http://das.nasophon.de/pyliblo/|pyLiblo]] qui offre des bindings python pour la bibliothèque liblo originellement écrite en C et particulièrement véloce. Enfin, une extension de flask, [[https://flask-cors.readthedocs.io/en/latest/|Flask-CORS]] ajoutera les en-têtes CORS (Cross Origin Resource Sharing) permettant la communication entre le jeu Gdevelop et le serveur web local.+Pour pouvoir répondre à une requête GET ou POST envoyée par Gdevelop, il faut utiliser un serveur web. L'utilisation du module python [[https://pypi.org/project/Flask/|Flask]] permet de créer un serveur web en quelques lignes de codes qui répondra aux requêtes. L'OSC sera géré par [[http://das.nasophon.de/pyliblo/|pyLiblo]] qui offre des bindings python pour la bibliothèque //liblo// originellement écrite en C et particulièrement véloce. Enfin, une extension de flask, [[https://flask-cors.readthedocs.io/en/latest/|Flask-CORS]] ajoutera les en-têtes CORS (//Cross Origin Resource Sharing//) permettant la communication entre le jeu Gdevelop et le serveur web local.
  
 Côté hardware, n'importe quel ordinateur muni d'une carte réseau fera l'affaire (Raspberry Pi compris), tous les logiciels et modules utilisés étant multiplateforme. Côté hardware, n'importe quel ordinateur muni d'une carte réseau fera l'affaire (Raspberry Pi compris), tous les logiciels et modules utilisés étant multiplateforme.
Ligne 25: Ligne 25:
 Dans le cas où plusieurs données sont empaquetées dans le même message OSC, des adresses web seront automatiquement créées et numérotées (ex : "/monOSC1", "/monOSC2"...) pour chaque donnée. Dans le cas où plusieurs données sont empaquetées dans le même message OSC, des adresses web seront automatiquement créées et numérotées (ex : "/monOSC1", "/monOSC2"...) pour chaque donnée.
  
-Pour récupérer les données dans Gdevelop il suffit donc de créer un évènement "Send request to webpageavec "http://localhost:5000" comme host, "/monOSC" dans le "path to pageet créer une variable de scène dans "store the response for this variable(voir l'exemple) Cette variable sera mise à jour si de nouvelles données sont reçues.+Pour récupérer les données dans Gdevelop il suffit donc de créer un évènement //Send request to webpage// avec "http://localhost:5000" comme //host//, "/monOSC" dans le //path to page// et créer une variable de scène dans //store the response for this variable// (voir l'exemple) Cette variable sera mise à jour si de nouvelles données sont reçues.
  
 En cas de problème, il peut être utile d'accéder au serveur web directement depuis son navigateur pour vérifier que les données sont correctement reçues et mises à jour http://localhost:5000/monOSC Le script python donne également quelques informations de déboguage sur sa sortie console. En cas de problème, il peut être utile d'accéder au serveur web directement depuis son navigateur pour vérifier que les données sont correctement reçues et mises à jour http://localhost:5000/monOSC Le script python donne également quelques informations de déboguage sur sa sortie console.
Ligne 74: Ligne 74:
 ===== exemple ===== ===== exemple =====
 L'exemple fourni permet de faire tourner un smiley à partir de l'orientation d'un téléphone. Il nécessite l'application libre et gratuite [[https://sensors2.org/osc/|sensors2OSC]] disponible sous Android depuis [[https://f-droid.org/|fDroid]] par exemple. L'exemple fourni permet de faire tourner un smiley à partir de l'orientation d'un téléphone. Il nécessite l'application libre et gratuite [[https://sensors2.org/osc/|sensors2OSC]] disponible sous Android depuis [[https://f-droid.org/|fDroid]] par exemple.
-Le paramètre orientation du téléphone envoie trois données, respectivement l'azimuth, le roulis et le tangage (en degrés). On utilise donc l'adresse http://localhost:5000/orientation1 pour lier l'azimuth du téléphone à la rotation du smiley dans gdevelop. L'IP de la machine qui fait tourner gdevelop et le serveur est entrée dans les options de sensors2OSC ainsi que le port d'écoute par défaut du serveur (9002). Une fois les cases "orientationet "envoyer les donnéescochées, on peut voir l'azimuth du téléphone depuis le pc en naviguant sur  http://localhost:5000/orientation1. Une fois Gdevelop lançé, le smiley suit l'orientation du téléphone.+Le paramètre orientation du téléphone envoie trois données, respectivement l'azimuth, le roulis et le tangage (en degrés). On utilise donc l'adresse http://localhost:5000/orientation1 pour lier l'azimuth du téléphone à la rotation du smiley dans gdevelop. L'IP de la machine qui fait tourner gdevelop et le serveur est entrée dans les options de sensors2OSC ainsi que le port d'écoute par défaut du serveur (9002). Une fois les cases //orientation// et //envoyer les données// cochées, on peut voir l'azimuth du téléphone depuis le pc en naviguant sur  http://localhost:5000/orientation1. Une fois Gdevelop lançé, le smiley suit l'orientation du téléphone. 
 + 
 +<blockquote>**A noter** : comme Gdevelop stocke les chemins absolus vers les contenus, il ne trouvera pas la seule image du projet (fournie dans le zip) Il faudra lui en indiquer manuellement le chemin</blockquote>
/home/resonancg/www/wiki/data/attic/projets/gdevelop-osc/accueil.1563209910.txt.gz · Dernière modification: 2019/07/15 18:58 de laurent