What’s the hold-up, you might ask? Well, one thing I’ve been struggling with for some time now is that the way SDL handles the OpenGL contexts is quite horrible. Resizing the application requires a reset of the SDL video mode, I guess it makes more sense if you’re making a game and switching between fullscreen and windowed mode, but even then it doesn’t make sense that the context would be destroyed, because the result of that is that all viewport setup, GL modes and most importantly the texture handles are destroyed in the current version. A complete reload of all textures isn’t acceptable.
Not even SDL 1.3 Beta has this fixed! However, I found a custom version of SDL which seems to solve this, so now the window happily resizes, while keeping mouse coordinates and textures intact! So, one issue down, several to go! If this solution doesn’t hold up on other platforms, I may be forced to convert to another library anyway, I’ll try this one out for (re)size.
The other issues are a few yet unexplained but repeatable crashes, some potiential memory leaks and an odd problem where the application gets extremely sluggish when creating new texture handles (I suspect), so far I’ve only had this with long sequences, 2000+ frames, and it only sets in after a while if you scrub violently! Debugging was never easier..
I’m currently trying out some changes in the GUI, trying to give it its own look and improve workflow, trying to innovate past the previous design. I’ll post another video soon for some feedback! Alpha is nearing…
May 25, 2009 at 01:03 |
cool ! anxious…
May 25, 2009 at 06:34 |
About the SDL issue, have you tried submitting a bug report to the SDL guys or is it already submitted?
Edit:
Seems it’s this one?
http://bugzilla.libsdl.org/show_bug.cgi?id=713
May 25, 2009 at 19:13 |
Hey Jimmy! Yes, sort of. That bug in your link is a result of trying to circumvent to real problem, which is that the context is destroyed, which also leaves mouse reporting in a state of limbo. The build I’m using now addresses the real issue with the contexts, and so far it seems to work!
I haven’t actually checked but this seems to be the number one issue that people are reporting about SDL, so I don’t think it’s news to the team. Thanks for the link though!
May 25, 2009 at 20:45
But still another voice in there will give it better priority. Better yet is to clean-up the patch and send it to the developers so they can implement it. It’s OSS after all.
May 25, 2009 at 21:09
You’re right of course, but I didn’t patch it, I have no idea which part of the code was changed! I could file a request for it to SDL though.
May 25, 2009 at 21:50
I suppose this is the one you are refering to?
http://www.idevgames.com/forum/showthread.php?t=12824
May 25, 2009 at 22:22
Correct, it solved my context problems
May 25, 2009 at 22:58 |
I’ve made a patch with the changes. Will test it later with the latest SVN. Can try and get in contact with the developers if you’d like. Perhaps you have some small test code I can test with?
May 26, 2009 at 00:11 |
Oh really, that’s cool! I don’t have anything small lying around, I could create something I guess, don’t know when I’ll have time for that though! My main problem have been that textures and context were lost when you use SDL_SetVideoMode(), which you need to call when there’s a resize event in order to get correct mouse input and screen pointer.
May 27, 2009 at 00:31 |
I am really looking forward to test this very promising software!
Greets, from Germany…