【发布时间】:2013-12-12 10:37:13
【问题描述】:
我有一个 UI 应用程序,它分别以 16、24 或 32 bpp 将输出渲染到屏幕外帧缓冲区。
我需要计算pitch,我的理解是pitch是一条扫描线的字节数,是否等于screenx*bitsperpixel?虽然显然它不会产生正确的结果。
我们可以有一个公式(通用)来计算音高吗?
【问题讨论】:
我有一个 UI 应用程序,它分别以 16、24 或 32 bpp 将输出渲染到屏幕外帧缓冲区。
我需要计算pitch,我的理解是pitch是一条扫描线的字节数,是否等于screenx*bitsperpixel?虽然显然它不会产生正确的结果。
我们可以有一个公式(通用)来计算音高吗?
【问题讨论】:
根据this:
视频 ram 中的缓冲区通常具有与其相关的步幅(也称为音高)。步幅是缓冲区的宽度(以字节为单位)
例如,如果您有一个 16 位/像素(2 字节/像素)的 1024x768 像素缓冲区,则您的步幅为:
1024 像素 * 2 字节/像素 = 2048 字节
所以一般的计算方法是:buffer_width * bytes_per_pixel
但重要的是要注意,对于 tile 渲染器,帧缓冲区在内存中不是线性的,因此我认为间距是 tile 的宽度(我无法找到证实这一点的来源)。
【讨论】: