Basis Universal 编码器/解码器
通用纹理格式
Basis Universal 是一个超压缩的 GPU 纹理压缩系统,可输出高度压缩的中间文件格式,并能快速转码为多种 GPU 纹理压缩格式。
关于 Basis Universal
Basis Universal 是由 Binomial LLC 开发的开源纹理压缩系统。它提供了一种通用的中间纹理格式,可以在运行时转码为任何 GPU 压缩格式,使单个压缩纹理文件能够在所有平台和设备上使用。
通用转码
单个文件适用于所有平台 - 可转码为 ETC1、BC1-7、PVRTC、ASTC 等
高度压缩
比传统格式更小的文件大小,且运行时转码速度快
质量模式
可选择 ETC1S(高压缩率)和 UASTC(高质量)模式
技术规格
文件结构
Basis Universal 文件(.basis)包含:
- 包含格式版本和图像元数据的文件头
- 压缩纹理数据(ETC1S 或 UASTC)
- 可选的 mipmap 级别和纹理数组切片
压缩模式
提供两种主要压缩模式:
- ETC1S:高压缩率,适合大多数纹理
- UASTC:更高质量,更适合法线贴图和细节纹理
限制
- 最大纹理尺寸取决于目标平台
- ETC1S 模式在高对比度纹理上可能显示伪影
- 浏览器内转码需要 WebAssembly 支持
常见使用场景
WebGL 应用
适用于需要跨平台纹理支持的基于 Web 的 3D 应用、游戏和可视化
游戏开发
通过为所有平台使用单一纹理格式来简化资产管线
移动应用
减少下载大小并支持多样化的移动 GPU 架构
VR/AR 内容
优化虚拟现实和增强现实体验的纹理传输
格式对比
| 特性 | Basis Universal | KTX2 | DDS |
|---|---|---|---|
| 通用平台支持 | ✓ 优秀 | ○ 良好 | ✗ 有限 |
| 压缩率 | 高 | 中等 | 中等 |
| 视觉质量 | 良好 | 优秀 | 优秀 |
| 典型文件大小 | 小 | 中等 | 大 |