SDL(Simple DirectMedia Layer)是一套
开放源代码的
跨平台多媒体开发库,使用
C语言写成。SDL提供了数种控制图像、声音、输出入的函数,让开发者只要用相同或是相似的代码就可以开发出跨多个平台(
Linux、Windows、
Mac OS X等)的应用软件。现SDL多用于开发游戏、模拟器、
媒体播放器等多媒体应用领域。
SDL(Simple DirectMedia Layer)被广泛的用于许多著名的游戏。最著名的游戏是赢得Linux组游戏开发大奖的 文明:权利的召唤(Civilization: Call To Power)。
SDL的作者是Sam Lantinga, Loki Entertainment Software的主力程序员(Lead
Programmer)。
设置8bpp或更高的任意
色彩深度的
视频模式。如果某个模式硬件不支持,可以选择转化为另一模式。
用颜色
键值(colorkey)或者alpha混合属性创建surface。
Surface的blit能自动的转化为目标格式。blit是优化过的,并能使用
硬件加速。
x86平台上有针对
MMX优化过的blit。
通过使用SDL_image、SDL_ttf、SDL_mixer、SDL_
net等
外部扩展库,可以轻松实现
JPG、
PNG、
TIFF图像的加载使用,
TrueType字体的使用,MP3文件的使用、
网络相关的使用等。
SDL也有其他语言的包装,可以在这里查看 SDL用C语言写成,但是可以很容易在C++下面工作,并且SDL绑定了许多其它的语言,这其中就包括
Ada, C#,
Eiffel,
Erlang,
Euphoria, Guile,
Haskell,
Java,
Lisp,
Lua, ML,
Objective C,
Pascal,
Perl,
PHP, Pike, Pliant,
Python,
Ruby, and Smalltalk。
最后,我们来了解一下SDL的
版权问题,SDL在
GNU LGPL 2(一个国际上的开源组织)下发布,这个版本允许你将SDL以
动态链接库(dynamic link library)的形式免费地用于商业游戏软件的开发。