EXT_texture_compression_bptc 扩展
EXT_texture_compression_bptc 扩展是 WebGL API 的一部分,它暴露了 4 种 BPTC 压缩纹理格式。这些压缩格式在 Microsoft 的 DirectX API 中被称为 BC7 和 BC6H。
可以使用 WebGLRenderingContext.getExtension() 方法来访问 WebGL 扩展。有关更多信息,请参阅 WebGL 教程中的 使用扩展。
常量
这些压缩纹理格式通过 4 个常量暴露,并可用于两个函数:compressedTexImage2D() 和 compressedTexSubImage2D()。
ext.COMPRESSED_RGBA_BPTC_UNORM_EXT-
压缩 8 位定点数据。每个 4x4 纹素块包含 128 位 RGBA 或图像数据。另请参阅 BC7 格式。
ext.COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT-
压缩 8 位定点数据。每个 4x4 纹素块包含 128 位 SRGB_ALPHA 或图像数据。另请参阅 BC7 格式。
ext.COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT-
压缩高动态范围的有符号浮点值。每个 4x4 纹素块包含 128 位 RGB 数据。它只包含 RGB 数据,因此返回的 alpha 值为 1.0。另请参阅 BC6H 格式。
ext.COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT-
压缩高动态范围的无符号浮点值。每个 4x4 纹素块包含 128 位 RGB 数据。它只包含 RGB 数据,因此返回的 alpha 值为 1.0。另请参阅 BC6H 格式。
示例
js
const ext = gl.getExtension("EXT_texture_compression_bptc");
const texture = gl.createTexture();
gl.bindTexture(gl.TEXTURE_2D, texture);
gl.compressedTexImage2D(
gl.TEXTURE_2D,
0,
ext.COMPRESSED_RGBA_BPTC_UNORM_EXT,
128,
128,
0,
textureData,
);
规范
| 规范 |
|---|
| WebGL EXT_texture_compression_bptc 扩展规范 |
浏览器兼容性
加载中…