I am just curious of what we can hope for in SDL2. Is there any
timeline anywhere? Or better yet design draft?
Here is my personal wish list:
- Keeping the C-level of the library and the general
"minimalistic/clean" API of SDL
- Dropping backward-source-level sdl<2 compatibility if so needed
- Multiple display surfaces - at least one with OpenGL support
- ForceFeedback-support
- Multiple mouse support or in general no assumptions on the number
of
devices of things (keyboard, mouse, screens, …)
- A little more vaguely: Support for newer multimedia hardware like
webcameras etc. - a grabbing interface
- Multiple windows
- Supported API for integrating with the native GUI API
- Supported API for integrating with wxWigdets
I have to admit that I don’t understand the desire to integrate SDL
into
a GUI window. All of the GUIs you mention have 2D graphic APIs and they
all have a 3D pane of some sort. They all have an input API… If you
want to program using those GUIs why don’t you just use the whole GUI
and avoid the problems of trying to integrate SDL into them? Can
someone
educate me on this?
It’s not so much that SDL should integrate into a GUI window, but that
SDL should be able to exist in the same application as one. SDL might
have faster blitters or a nicer input API than ,
or you might be recycling existing SDL code into a larger application.
You might need the sound APIs or joystick input APIs that does not have. Maybe you need to add some dialogs to your
application that need to do things that SDL has no support for at all,
but does with very little effort?
Extending existing applications with SDL based material is definitely a
use case for the view stuff, though. Let’s say you had to make
something that worked as a plug-in, and you wanted to use SDL because
it’s what you know, or what you like, or because you’re reusing
existing code?
- Backend and blitter plugins
Can you give more details on what a backend/blitter pluging would be
used for? I ask because the SDL backend is handcrafted for each
platform
and the blitter code is (usually) handcrafted for the platform. So, I
don’t get your point and I would like to understand what you mean.
It’d just be nice to be able to load new blitter code into SDL on the
fly. For example, I’ve been working on a patch to add Altivec
accelerated blitters to SDL, and it’s a pain to have to recompile SDL
every time I want to change something. It will be a pain to get the
patches merged upstream, and it will be a pain to maintain my own fork
of SDL until it does. It would be a lot easier to say “hey, download
this .so and put it inside your (official) SDL framework and your
application will run at least 3x faster on computers with altivec”.
All of the tests for the blitters are coming out of a function table
anyway, there’s no particularly good reason this code has to live
inside of SDL_blit_[NA].c. These source files are also horrifyingly
ugly and long right now, and will continue to get uglier with each
optimization.
As for backends, wouldn’t it have been nice if glSDL could’ve just
plugged right into SDL as-is?
-bobOn Feb 25, 2005, at 3:07 PM, Bob Pendleton wrote:
On Fri, 2005-02-25 at 12:05 -0500, Bob Ippolito wrote:
On Feb 25, 2005, at 11:01 AM, Olof Bjarnason wrote: