Surface 格式 (Direct3D 9)
在 Direct3D 中,所有二维 (2D) 图像都由称为表面的线性内存范围表示。 图面可以视为 2D 数组,其中每个元素包含一个颜色值,表示图像的一小部分(称为像素)。 图像的详细信息级别由表示图像所需的像素数和图像的光谱所需的位数定义。 例如, 800 像素宽 x 600 像素高、每个像素 32 位颜色的图像 (写为 800x600x32) 将比宽 640 像素 x 480 像素高、每个像素 16 位颜色的图像更详细 (写为 640x480x16) 。 同样,更详细的图像将需要更大的表面来存储数据。 对于 800x600x32 图像,表面的数组尺寸将为 800x600,并且每个元素将保留一个 32 位值来表示其颜色。
所有图面都有一个大小,并存储表示颜色的特定位数。 表示颜色的位分为单独的颜色元素:红色、绿色和蓝色。 在 Direct3D 中,所有颜色元素都由 D3DFORMAT 枚举类型定义。 Direct3D 颜色格式细分为每种颜色保留的字节数。 例如,Direct3D 中的 16 位颜色格式定义为D3DFMT_R5G6B5,其中 5 位用于红色 (R) ,6 位用于绿色 (G) ,5 位保留蓝色 (B) 。
相关主题