Yep...
Un petit message pour promouvoir le travail de de Serge, un membre du Labomedia, autour de l'utilisation de la Kinect avec le Game Engine de Blender, et le tout sous Ubuntu...
Il nous a proposé une petite démo jeudi dernier lors de nos Open Ateliers hebdomadaires...
--> La documentation en cours de rédaction
Ce n'est que le premier jet...
A suivre...
le fichier vidéo est inaccessible : http://openatelier.labomedia.org/16/kinect-blender.flv (HTTP/1.1 301 Moved Permanently)
Dernière modification par Olivier (2011-05-21 13:29:20)
Hors ligne
ah ouais,, je vois que ça tourne pas mal du tout.
la gestion du personnage a l'air plus que correcte.
Le labomedia travaille d'arrache pied, vous faites pas mal quand même...bravo l'équipe
Hors ligne
Salut,
je remonte le topic....
je suis une installe utilisant le BGE et la kinect. Mais gros problème pour récupérer le signal OSC (ainsi que ses variables). Il semble que les scripts (pyOSC.py, etc...) fonctionnent sur blender2.49 et non sur les dernières(2.6x). Désolé, je suis une bille en python.
Pour le moment aucune reception OSC dans le BGE. Quelqu'un a-t-il une solution?
JE travaille sous windows7 et linux.
merci
Hors ligne
Salut,
Blender 2.6 tourne avec python 3, alors que la 2.49 était avec python 2.7
La version de OSC.py à utiliser est là: http://gitorious.org/pyosc
Tout sur OSC: http://wiki.labomedia.org/index.php/Ope … trol_:_OSC
La kinect dans le Blender Game Engine: http://wiki.labomedia.org/index.php/Kin … ame_Engine
Serge
Hors ligne
merci serge pour ta réponse rapide.
on a tester ça, mais malheureusement aucun signal (sous mac os 10.6, avec le blender 2.6 et OSCeleton). Peut-être qu'on a mal placer les scripts... On teste sous linux...
j'avais vu les liens de labomedia...on a testé le jeu de foot sur blender 2.49b ; ça ne marche pas.
tant qu'on y est et vu que je suis une bille en python, une autre question. Comment récupérer le signal osc de la kinect et assigner les variables pour créer un mouvement sur un empty dans blender ? si t'as un script qui tourne, ça me soulagerais énormément (j'ai une présentation à faire mardi prochain)...
L'idée est la suivante: un empty gère une lumière dans une scène. Le spectateur interagit sur la lumière via la kinect ;en se déplaçant il bouge la lumière et découvre l'environnement caché.
merci d'avance
Dernière modification par le singe vert (2013-04-24 10:53:12)
Hors ligne
Salut,
La récupération ne dépend pas du système d'exploitation. C'est fait avec le module socket de python, python est fourni "pile incluse", rien à installer de plus que python.
Le décodage est fait par OSC.decode(truc), c'est la seule fonction utilisée.
Ce code
raw_data = gl.sock.recv(buffer_size)
print(raw_data)
reçoit et imprime les datas brutes reçues sans utiliser OSC.py
import OSC # avec OSC.py dans le dossier du blend
data = decodeOSC(raw_data)
print(data)
va imprimer les datas décodées
Par contre, il faut définir IP, port identique sur l'envoi et la réception:
dans le Foot 2.49, dans getOSC_kinect.py, j'écoute ('localhost', 7110). OSCeleton envoie où ?
Piloter des emptys en position est facile, mais le script ne suffit pas. Le nom des objets, l'application des scripts sont définis dans Blender. Quelles sont tes connaissances de Blender, du Game Engine ?
Ce truc se fait sans problème en 2h pendant un Open Atelier au Labomedia ! Cela permet de donner des explications qui permettent ensuite d'être autonome sur des modifs.
Sinon, je peux écrire un bout de python, mais il me faut le fichier blend pour l'intéger. Ton projet est prometteur, et ç'est facile à faire !
Serge
Hors ligne
Bonjour Serge,
je travail avec le singe vert sur ce projet.
Pour l'instant OSCeleton envoie les donnés en local sur le port 7110
osceleton -p 7110 -mx 1 -my 1 -mz 1 -ox 0 -oy 0 -oz 0 -a 127.0.0.1
Dans le script getOSC_kinect.py
data = kinect_data('localhost', 7110)
Pour l'instant l'erreur que j'ai dans le terminal :
File "getOSC_kinect.py", line 29, in <module> TypeError: bpy_import_meth() takes at most 4 arguments (5 given)
Je voulais tester sur Linux pour avoir les même conditions et pouvoir espérer y comprendre quelques chose parce que là je dois avouer être dépassé...
Merci de tes réponses en tout cas
Hors ligne
Est-ce une erreur sur la ligne import OSC ?
Blender 2.49 ou 2.6 ?
Ou est le fichier OSC.py, version python 2 ou 3 ?
Hors ligne
L'arborescence est celle du dossier de base, ce dossier n'a pas du tout été modifié car je voulais tester le script original.
-rw-r--r--@ 1 yuk staff 293 21 mai 2011 Copyright -rw-r--r--@ 1 yuk staff 35148 21 mai 2011 GNU GENERAL PUBLIC LICENSE Version 3 drwxr-xr-x@ 9 yuk staff 306 25 avr 03:12 OSC -rw-r--r--@ 1 yuk staff 1512452 31 mai 2011 foot_kinect_1.blend drwxr-xr-x@ 7 yuk staff 238 31 mai 2011 lib drwxr-xr-x@ 5 yuk staff 170 31 mai 2011 sound drwxr-xr-x@ 8 yuk staff 272 31 mai 2011 textures
Dans le fichier getOSC
import GameLogic import socket from .OSC import OSC
Je test le script sur la 2.49b de Blender actuellement avec MacOS 10.6
Dernière modification par yuk (2013-04-25 12:29:01)
Hors ligne
from .OSC import OSC
va chercher OSC.py dans le dossier OSC sous linux, je ne trouve pas l'équivalence sous MAC
le mieux est de le remplacer par
import OSC
et mettre le fichier OSC.py dans le dossier avec le blend
ça doit marcher sur MAC
Je suggère de ne tester que sur Blender 2.6 et de rester sur MAC. Il ne faut pas se disperser.
Blender 2.6 a beaucoup d'améliorations, il ne faut pas s'en priver!
python marche très bien sur MAC, les infographistes sont tous sur MAC !
Hors ligne
Salut serge,
on aimerait bien faire ce truc en 2h en Open Atelier voir juste passer au Labomedia. Malheureusement ça va être difficile vu que nous vivons en nouvelle-calédonie.
citation :
Sinon, je peux écrire un bout de python, mais il me faut le fichier blend pour l'intéger.
Bon....sinon, je te joins un blend "allègé" du projet (connexion de merde de ce coté de la planète) sans les scripts pour la kinect. Par contre, il y a un playerScript avec des keyboard.events qui montre les mouvements que j'aimerais récupérer via la kinect.
le script lamp.py est un essai (je débute dans le bge et sur python) pour que ma lampe s'allume lorsqu'il y a mouvement de l'empty "ctrLamp".
on est sur blender 2.6 et python 3. la machine qu'on va utiliser pour l'installe tourne sous windows7 (pour le moment on test sous mac os).
merci d'avance
Dernière modification par le singe vert (2013-04-25 16:43:15)
Hors ligne
Je vous propose un fichier et une page dans le wiki Labomedia:
http://wiki.labomedia.org/index.php/Exe … ns_Blender
qui reçoit et imprime toutes les secondes. C'est un exemple simple mais au top pour recevoir.
J'ai testé sous linux et win$. Désolé, je n'ai pas de mac.
Hors ligne
merci Serge pour le wiki. J'espère que cela servira aussi à d'autres utilisateurs du bge et de la kinect....
De notre coté, on va tester tout ça... on te tient au jus de l'avancer du projet.
Hors ligne
Pages: 1