我可以依赖SDL_Surface :: pitch是不变的吗?

时间:2017-03-03 12:58:38

标签: sdl

我正在开发一个利用SDL 1.2.15的项目。该应用程序构造一个SDL_Surface,其帧缓冲区然后通过getDisplaySurface()->pixels进行检索并通过串行线发送。

我了解到,SDL_Surface::pixels指向的像素缓冲区不一定是连续的。字节序列可能被不属于可见图像区域的数据块中断。

这意味着图像的大小为320×240,但像素缓冲区的大小可能是512×240。 (我想由于内存对齐可能加速可能是一个有效的原因。但这只是我的假设,但实际知识不支持。)

问题:

在我的情况下,我碰巧很幸运,像素缓冲区恰好具有我图像的尺寸。我可以相信像素缓冲区尺寸不会改变吗?

这样我就可以将像素缓冲区内容发送到串行接口,而不必编写处理删除这些无效块的代码。

1 个答案:

答案 0 :(得分:0)

SDL uses行的4字节对齐。它还匹配OpenGL的default alignment