2012-05-22 89 views
0

帧缓冲区是否包含深度缓冲区信息,或仅包含图形应用程序中的颜色缓冲区信息?关于gui在windows上的情况,他们是一个帧缓冲区,它是否支持颜色缓冲区+深度信息或只是颜色信息?帧缓冲区大小

回答

1

对于实时3D,“标准”缓冲区是颜色缓冲区,RGBA格式,每个组件1个字节,深度缓冲区,每个组件3个字节。每个片段有一个样本(即,如果您有8x抗锯齿,则每个像素将有8种颜色和8种深度采样)

现在,许多应用程序使用额外的自定义缓冲区。它们通常被称为g-缓冲区。这些可以包括:对象ID,素材ID,反射率,闪亮度,法线,切线,副法线,AO因子,影响片段的大多数流入灯光等。在1080p和4xMSAA以及双缓冲或三缓冲时,可能需要大量内存,因此所有这些信息通常尽可能紧密地包装。

2

如果你在谈论Linux中的内核级framebuffer,它会设置分辨率和颜色深度。这里有一个列表common framebuffer modes;注意模式是由分辨率和颜色深度决定的。您可以通过将命令行参数传递到引导加载程序中的内核(vga=...)来覆盖帧缓冲区。

与Linux不同,在Windows上,图形子系统是OS的一部分。我不认为认为(并且,如果我错了,请有人纠正我)在最新的Windows中支持非VGA输出设备,因此framebuffer在此处不再使用/不可用。

+2

我认为原始的海报是在3D应用程序的z缓冲区中询问深度信息,而不是颜色深度。但我可能是错的。 – jcoder

+0

@约翰我没有(现在也不确定)。 q的唯一标签是'graphics',这并不是很多。 –

+0

我认为这个问题需要一些额外的说明。 – jcoder