指出LZ的一个理解Surface的误区。
Surface是一个数组,这个数组代表一个矩形的区域,在这个矩形的区域内会存放有关于BMP图像的像素信息(注意往下看LazyFoo大哥的教程,后面有详细的像素操作的解释)。什么叫做screen呢?一般地来说,SDL会把帧缓存跟这个Surface挂钩,所以初始化的时候这个Surface要初始化成与显示大小相同的区域。其它所有的Surface都要Blit到这个Surface上面来,在SwapBuffer的时候,这个Surface中的内容就会被Copy到后台缓存。
所以这个Surface是实实在在的Surface,并不是不可见的。我们所有见到的内容,其实都是screen上面的内容。
另外指针的*写在哪里都是无所谓的,这只是反映了不同的人对指针不同的理解而已。只要所有的写成统一的就已经非常好了。
【教程】Rothsdad教大家写Linux游戏 [已更新至第二节]
- racnil
- 帖子: 288
- 注册时间: 2008-08-28 8:12
- 联系:
Re: 【教程】Rothsdad教大家写Linux游戏 [已更新至第二节]
上次由 racnil 在 2011-01-22 9:30,总共编辑 1 次。
SLAX and Xorg(without any Window Managers)
It's fun!
It's fun!
- racnil
- 帖子: 288
- 注册时间: 2008-08-28 8:12
- 联系:
Re: 【教程】Rothsdad教大家写Linux游戏 [已更新至第二节]
详细一点说,这个Key是用来设置单缓存模式的。游戏中很少会用得到,一般都会用双缓存。最后SDL_SWSURFACE这个参数是用来设置内存中的surface
双缓存就是说呢,一个缓存中的内容会被显示到屏幕上,在显示前面的缓存时,后面的一个缓存就会开始做绘制的工作。然后系统会把前面的缓存与后面的缓存交换位置,把后台已经绘制好的内容显示到前景。原来是前景缓存此时在后台就开始做绘制工作,如此往复……
SLAX and Xorg(without any Window Managers)
It's fun!
It's fun!
- photor
- 论坛版主
- 帖子: 11004
- 注册时间: 2008-04-26 12:41
-
- 帖子: 490
- 注册时间: 2009-06-20 23:53
Re: 【教程】Rothsdad教大家写Linux游戏 [已更新至第二节]
这个SDL库最大的毛病是只能用BMP图,有linux用BMP图的么? 

- racnil
- 帖子: 288
- 注册时间: 2008-08-28 8:12
- 联系:
Re: 【教程】Rothsdad教大家写Linux游戏 [已更新至第二节]
SDL不只是可以利用BMP图的。SDL可以载入诸如PNG,JPEG等其它图片格式。但是这需要加载其它的头问件和利用其它操作。风间星魂 写了:这个SDL库最大的毛病是只能用BMP图,有linux用BMP图的么?
SLAX and Xorg(without any Window Managers)
It's fun!
It's fun!
- fanhe
- 帖子: 2357
- 注册时间: 2007-03-24 23:45
Re: 【教程】Rothsdad教大家写Linux游戏 [已更新至第二节]
英语不太差的自己直接看lazyfoo的教程吧,很浅显易懂的
另外,楼主,貌似这个教程已经有人翻译了前十几课了
反正我是直接看英文版的……
另外,楼主,貌似这个教程已经有人翻译了前十几课了
反正我是直接看英文版的……
- Rothsdad
- 帖子: 395
- 注册时间: 2009-04-18 11:41
Re: 【教程】Rothsdad教大家写Linux游戏 [已更新至第二节]
love2d 的 lua引擎 很适合新手练手.
lua的生命力很强啊
lua的生命力很强啊