1
我得到了一个UI应用程序,分别在16,24或32 bpp中将输出渲染到屏幕外帧缓冲区。如何计算Framebuffer音调?
我需要计算音高,我的理解是pitch是一个扫描行中的字节数,是否等于screenx * bitsperpixel?虽然显然它不会产生正确的结果。
我们可以有一个公式(通用)来计算音高吗?
我得到了一个UI应用程序,分别在16,24或32 bpp中将输出渲染到屏幕外帧缓冲区。如何计算Framebuffer音调?
我需要计算音高,我的理解是pitch是一个扫描行中的字节数,是否等于screenx * bitsperpixel?虽然显然它不会产生正确的结果。
我们可以有一个公式(通用)来计算音高吗?
根据this:
缓冲器在视频RAM一般都有一个与之相关的步幅(也称为间距)。步幅是缓冲器的字节宽度
例如,如果你有16个比特的1024×768像素缓冲器/像素(2个字节/像素),您的步幅将是:
1024像素×2个字节/像素= 2048字节
所以通用的方法来计算,它是:buffer_width * bytes_per_pixel
然而重要的是要注意,对于瓦片渲染器帧缓冲器未在存储器线性和,我认为那个球场是一个瓦片的宽度(我找不到来源来确认t他)。
感谢Raxvan的回复,我正在浏览网页,并通过这个公式来计算音高(对不起,现在没有链接)...(((Framebuffer.Width * 32)+ 31)&〜31)> > 3,这看起来像32bpp,如果我有16bpp?它会工作,如果我只是用16取代32,任何想法> – Saqlain
@Saqlain我认为公式用填充计算宽度(以字节为单位),并且很难为您的问题找到明确的好答案 – Raxvan