简单看了一下 sdl,做个记录

闲得没事在想如何写代码播放MP3.google了一遍,发现有人说用 sdl_mixer 最好,还能跨平台.

工作的项目里,好像就整合了 sdl库,gameswf库也是依赖sdl.dll的.然后就决定看看sdl库到底是个啥.

到sdl官方网站,下载了一个SDL-1.2.15 开发版本,有源代码的那种.

里面 VisualC 目录下有个 SDL.sln,里面包含 sdl.vcproj 和 sdlmain.vcproj,可以编译出来 sdl.dll sdl.lib 和 sdlmain.lib.

在 VisualC\tests里有个 tests.sln,里面包含许多工程,每个工程都是一个 独立的可以运行的例子,

只要把刚才编译出来的 sdl.dll 拷贝到工程的位置即可.


这些例子的入口函数都是 int main(int argc,char** argv),可不要它迷惑,它们都是 win32 工程! 不是 console 工程!

真正的入口函数是 sdl库里面的 WinMain!


具体代码还没有仔细看,不知道  sdl是如何封装的.但是那些例子摆在那里,几行代码就能实现各跨平台的小功能,sdl的方便好用是显而易见的.

第2个例子就是播放音乐,一共也没有几行代码.,非常简单.


我还是没有搞明白sdl 与 dx,opengl 之间的关系.

据说 sdl 在 win32 上默认渲染用的是 dx, 也可以通过代码配置为opengl ,sdl的图形部分只是 dx 和 opengl 上一层的封装.不知道这个理解正确不正确.

据说 sdl的 2d 渲染是与  dx 无关的,难道在win32 上直接调用的 gdi ?


看了看公司的项目, 现在在做的这个项目的入口函数,也是像这些 sdl的 sample 一样,从 sdl 的 WinMain 过来的,看来这个 sdl 还是很有学习价值的.

许多都是未知的,先把自己折腾了这1,2小时的简单认识摆在这里做个备忘,

有空应该多去学习.


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值