SDL and drawing primitives

Hi, I’m a rather new to your SDL library. I’m using it to port a few games
written for DOS/Windows over to Linux. Before I began the work, I searched
high and low for a graphics library that was simple, to the point, and that
would allow for easy porting of my games. I found SDL to be exactly what
I’m looking for to do my ports, plus any new projects down the road. Great


I do have a few questions about it though that I didn’t feel to be
appropriate for the mailing list (if you feel otherwise, I could post a copy
of this). SDL doesn’t have any graphics primitives, like drawing pixels,
lines, etc (I know you do have some example code on the web page about
plotting pixels. I’m using a variation of it in my app now). My question
is, “How come?”. I’ve seen a few higher-level extensions like SGE and
PowerPak that build off the basic SDL routines, but I was just wondering why
simple drawing routines were not included (nothing like scaling, rotation,
plotted polygons, etc)? I think it would be nice to have some very basic
routines in there, then leave the more complex ones to the higher-level
libs. Is it out of the scope of the project? Did you simply want to build
the foundation of SDL the work on the pieces a bit more later? Please don’t
take this like I’m bitching and moaning about it (I’m sure this has been
hashed out before), it’s just that I’m simply curious and I would offer to
add some basic routines if you felt like they deserved a place.

Yes, I figured that if people wanted drawing routines, they could do a much
better job implementing them than I could, given a framebuffer in which to
write. What SDL could provide is acceleration of drawing primitives, but
I’ve found that very few applications need very fast drawing primitives.
The need for speed has been in updating large portions of the screen, so
that is what I have focused on.

Thanks for the thoughtful question!

Thanks again. You and the rest of Loki rock!

Thanks! :slight_smile:

Dave Archbold
Sending this from my Microsoft induced hell of a job. Please send replies
to davea at

-Sam Lantinga				(slouken at

Lead Programmer, Loki Entertainment Software–
“Any sufficiently advanced bug is indistinguishable from a feature”
– Rich Kulawiec