Adreno GPU上的DirectX应用开发简介 (2)
2.2 DirectX 的 Adreno 图形子系统
Adreno GPU 超过了 Direct3D11.1 功能级别 9_3 的要求。 本节详细介绍了可通过 Direct3D API 访问的 Adreno GPU 功能。
纹理特征
纹理格式
下表列出了 Direct3D11.1 功能级别 9_3 支持的纹理格式。 对于每种格式,该表指定了该格式是否可用于 2D、3D 或立方体贴图纹理。 “过滤器”列指定该格式是否可用于启用了非点最小或磁力过滤的采样器。 Mip 列指定格式是否可以进行 mipmapped,GenMip 列指定驱动程序是否可以为该格式自动生成 mipmap。 最后,Render 列列出了该格式是否可以用作渲染目标。
纹理压缩
压缩纹理可以显着提高图形应用程序的性能和加载时间,因为它减少了纹理内存和总线带宽的使用。 Direct3D 11.1 中 Adreno GPU 支持的重要压缩纹理格式有:
- BC1 – DXT1 纹理压缩格式(RGB 的每像素 4 位,带有 0 位或 1 位 alpha)
- BC2 – DXT2 纹理压缩格式(RGBA 每像素 8 位)。 在 BC2 中,alpha 存储为未压缩的 4 位值。
- BC3 – DXT5 纹理压缩格式(RGBA 每像素 8 位)。 在 BC3 中,alpha 使用块压缩技术进行压缩。
在以前版本的 Direct3D 中,D3DX 库提供了有用的实用方法,用于从 DDS 文件加载压缩纹理。 但是,Microsoft 弃用了 D3DX,并且没有将其包含在 Windows 8 SDK 中。 但是,作为 Adreno SDK 的一部分,Qualcomm 在 Adreno Texture Converter 工具中支持将纹理压缩为 BC1/BC2/BC3 格式。
大纹理尺寸
Adreno GPU 支持的纹理尺寸高达 4096 x 4096 纹素。
多个渲染目标
Adreno GPU 最多同时支持四个渲染目标以及深度/模板缓冲区。 以下深度/模板格式通过 Direct3D11.1 功能级别 9_3 公开。