If the user is looking to embed Soya in a QT or GTK app, they can probably handle getting events from QT or GTK. My limited experience says it isn't that hard; you just have to know where the documentation on it is (admittedly, that might be a bit of a trick for those new to programming).
If all they need is windowed instead of fullscreen, then maybe soya should be adjusted... On Jan 28, 2008 2:24 PM, Souvarine <[EMAIL PROTECTED]> wrote: > Hello soya users :) > > There have been many people on IRC who have asked how to render soya in > a QT or GTK widget so I decided to try it and to make some tutorials > about it. I've managed to use soya into a PyQT 4 opengl widget, you can > get a screenshot here > http://aliasrobotique.org/~souvarine/soyaqt1.png<http://aliasrobotique.org/%7Esouvarine/soyaqt1.png> > This is the basic-2 tutorial with the rotating sword but into QT. the > button start or stop the rotation of the sword, it works very well. > > Problem is that I couldn't make it without hacking soya sources a bit. I > think we should modify soya a bit to make this easier. Here you can find > my tutorial and the two soya source files I had to modify to make it > work (init.pyx and mainloop.pyx). > http://aliasrobotique.org/~souvarine/soya_qt_test.tar.gz<http://aliasrobotique.org/%7Esouvarine/soya_qt_test.tar.gz> > > In init.pyx I added two functions, set_video_size() that set the size of > the rendering surface in opengl and set_stencil() that set the depth of > the stencil buffer. In mainloop.pyx I've moved the "for i in > BEFORE_RENDER: i()" out the render() method. I couldn't figure out why > this had to be in this method, so I put it in main_loop() and update() > instead. > > Those modifications seems pretty dirty to me, I would like to find a way > to make all this cleaner so I'm asking for your opinion :) > > > Something else that bother me, after adapting the basic-2 tutorial to QT > I've tried to do the same with basic-5 and basic-6 to see how to deal > with keyboard and mouse events. Since no SDL surface is created, SDL > don't catch any event. I've tried to make a QT to SDL event conversion, > using SDL_Push_event() to send the event I got from QT into SDL queue so > that they can be retrieved with soya.process_event(). It didn't work. I > figured out that when SDL_VIDEO is not inited the SDL queue is disabled. > > I wonder what should be done here. Let the user know that if he choose > to use soya in some GUI system soya.process_event() wont work and he > will have to deal with event by himself ? Or provide some other way to > send fake SDL event (like a soya.push_event() function) ? > > Once again I'm asking for your opinion. > > Souvarine. > > > _______________________________________________ > Soya-user mailing list > Soya-user@gna.org > https://mail.gna.org/listinfo/soya-user > -- D.B., "Proegssilb"
_______________________________________________ Soya-user mailing list Soya-user@gna.org https://mail.gna.org/listinfo/soya-user