Skip to content

SDL 2.0 Features

A few days ago, Ryan Gordon put up a document describing upcoming changes and additions to the next version of SDL. Currently branded SDL 1.3, it will be relabeled 2.0 upon release. There’s a lot of great stuff in there that will make SDL much more flexible. As an example, take a look at the first 4 items from the ‘Video and Events’ section:

- Multiple windows! You don’t need to have a single video surface anymore!
This is a new API (but SDL_SetVideoMode() still exists in the
compatibility layer).
- Multiple displays: SDL exposes details of what physical monitors are
hooked up to a machine and lets you control them individually.
- Formal API for positioning SDL windows: it sort of comes with the
multiple window/display support. No more setting environment variables
for this!
- Video device enumeration: you can get an idea of what APIs and hardware
are available to you.

These are all things I have long wanted to see in SDL. Another big change comes further down the page, near the end:

‘SDL_main:
- No longer required on any platform. Now it does what it was intended
for: hiding differences in main/WinMain/etc. Initialization details
are being moved into SDL_Init() where they belong. This makes it easier
to have SDL as a plugin, or use a non-SDL path without it hijacking your
mainline just to function.

I love this one. In my experience, though, ‘SDL_main’ isn’t really required on Windows. I’ve built several SDL apps without it and plenty of people are using my D bindings for SDL without issue on both Windows and Linux. Mac, apparently, is another story.

The day they get all of this implemented and released, I’ll be a happy dude.

Technorati Tags: , ,

Post a Comment

Your email is never published nor shared. Required fields are marked *