i did this kind of thing a hundred years ago with py in the 2.25 game engine or so. i think it will work in current normal blender ui because i think there is now a way to hook a python function to be called periodically.
in a periodically updated py func you can poll your socket for incoming data in an async/non-blocking way. that way you can handle input from external sources but still not block the main ui. python 3 seems to have a nice looking revised lib for that, https://docs.python.org/3.4/library/asyncio.html#module-asyncio . back in the ancient bge experiment i think i used just the basic socket api's select(). otherwise when doing this recently in a different app i used the Circuits Python library but I bet that asyncio is simple and nice with py 3 now. so given that you can hook blender to call your network-reader periodically it should be straightforward - i can try to help if there are trouble with the async socket reading. i wouldn't go via any DB system for things similar to mouse dragging & button clicks. ~Toni On Sat, Apr 5, 2014 at 2:57 AM, <pablo /> <[email protected]> wrote: > My original idea (crazy as it might be) was to develop an app in Android > that could be used to control Blender. > Imaging like dragging two fingers on the screen to rotate the screen, 3 > fingers to rotate the element, buttons to do specific functions and the > like. > Mainly the screen and objects rotation would require high bandwidth which > I'm not sure using SQLite would cover, that's why I was asking if it could > be done using with a python add-on. > I really don't know if that's possible but wanted to know about it and > think it's a very interesting project. > If a blender add-on could start socket with python then I will start > digging into add-on development and find out the way. > Another advantage is that if Blender can expose a socket then users will > not need to install anything else on their computers to make the connection > with the devices. > This will allow a tablet/phone or whatever connect to the computer:socket > directly. > > Well that's my ideal, from there all I have to know what's possible (or > could be developed to make it possible) and what isn't. > > Cheers, > Pablo > > > > On Fri, Apr 4, 2014 at 6:00 PM, W. Nelson <[email protected]> wrote: > >> In #blenderpython on freenode.net a couple other coders and I have talked >> about similar ideas a few times recently. When I get a chance to post my >> notes I will share them. >> >> We recently talked about PyQT as module and SQLite. Using SQLite for a >> messaging system instead of using sockets. Sockets are probably the best >> way to go though. >> >> The hardest part we decided was the messaging system and the timing of >> it. Also keeping any C code additions to Blender to a minimum. Hopefully >> it can all be done it Python. That was the hope using SQLite transactions >> as a messaging system. >> >> I will add more when I have more time. This is an interesting topic to me >> also. >> >> JTa >> >> >> >> >> ________________________________ >> From: "<pablo />" <[email protected]> >> To: bf-blender developers <[email protected]> >> Sent: Friday, April 4, 2014 10:16 AM >> Subject: Re: [Bf-committers] Question about external Blender interface >> >> >> Thanks for answering! >> I don´t know anything (yet) about python dev inside Blender, could it be >> possible to implement it as a plugin? >> I´m interested and could dedicate some time in this topic and think doing >> it would help the project. >> >> Regards, >> Pablo >> >> >> On Fri, Apr 4, 2014 at 1:16 PM, Dalai Felinto <[email protected]> wrote: >> >> > Hi Pablo, >> > >> > This can be implemented via Python, but you will need to handle all >> > the socket connectivity part. >> > >> > It would be nice to have this built-in in Blender (maybe as new >> > bpy.app.handlers). But I don't think anyone is working on this it at >> > the moment. >> > >> > Dalai >> > -- >> > blendernetwork.org/dalai-felinto >> > www.dalaifelinto.com >> > >> > >> > 2014-04-04 13:05 GMT-03:00 <pablo /> <[email protected]>: >> > > Hi, >> > > >> > > * My background: >> > > >> > > I started using Blender a couple of months ago, I´ve been always a fan >> of >> > > 3D and Blender in general since I think it´s an excellent product. >> > > I work as a Web and Android developer >> > > >> > > * The object of the email: >> > > >> > > Ultimately when using Blender, I thought about using all 5 mouse >> buttons >> > > then it came to me that I have a Joystick with 3d movement and lots of >> > > buttons would be interesting using it with blender. >> > > Finally I came to the idea of developing an Android application to >> > replace >> > > the main use of the keyboard. >> > > >> > > What I don´t know is if Blender allows any kind of connectivity out of >> > the >> > > app. >> > > For example, it could use a port or something to which apps could >> connect >> > > and send in commands, or something else you guys might think of. >> > > The possibilities are really big since virtually anything could be used >> > to >> > > control blender. >> > > >> > > I would like to know if this is possible and if there are already >> efforts >> > > towards it, I couldn´t find any info on the Web. >> > > >> > > If this is not the right place to post please let me know. >> > > >> > > Thanks! >> > > Pablo >> > > _______________________________________________ >> > > Bf-committers mailing list >> > > [email protected] >> > > http://lists.blender.org/mailman/listinfo/bf-committers >> >> > _______________________________________________ >> > Bf-committers mailing list >> > [email protected] >> > http://lists.blender.org/mailman/listinfo/bf-committers >> > >> _______________________________________________ >> Bf-committers mailing list >> [email protected] >> http://lists.blender.org/mailman/listinfo/bf-committers >> _______________________________________________ >> Bf-committers mailing list >> [email protected] >> http://lists.blender.org/mailman/listinfo/bf-committers >> > _______________________________________________ > Bf-committers mailing list > [email protected] > http://lists.blender.org/mailman/listinfo/bf-committers _______________________________________________ Bf-committers mailing list [email protected] http://lists.blender.org/mailman/listinfo/bf-committers
