带你读《2022技术人的百宝黑皮书》——内存优化: 纹理压缩技术(4)

简介: 带你读《2022技术人的百宝黑皮书》——内存优化: 纹理压缩技术(4)

带你读《2022技术人的百宝黑皮书》——内存优化: 纹理压缩技术(3)https://developer.aliyun.com/article/1340978?groupCode=taobaotech

使用压缩纹理(WebGL)

在 WebGI 上使用纹理压缩主要有如下步骤

1.下载纹理压缩素材;

2.解析ktx文件;

3.判断设备支持的纹理压缩格式;

4.通过getExtension获取纹理压缩扩展:

5.上传纹理压缩数据到GPU;

其中上传纹理主要指compressedTexlmage2D、compressedTexlmage3D两个API,其入参均可以从KTX文件中拿

 

var ext = gl.getExtension('WEBGL_compressed_texture_etc');
var texture = gl.createTexture(); gl.bindTexture(gl.TEXTURE_2D, texture);
gl.compressedTexImage2D(gl.TEXTURE_2D, 0, ext.COMPRESSED_RGBA8_ETC2_EAC, 512, 512,
0, textureData);


兼容性情况

 

  1. Android平台 Android平台由于机型、厂商众 纹理压缩的支持况较为复 EC1支持的最为广但是由千ETC1不支持Alpha 导致其使用场景有 ETC2罢盖度也挺高但是需要启OpenGL    es   3.x; google play Andra高端机型ASTC的支持度覆盖度77以上(具体GPU型号 高通骁龙415及以上(2015) , ARM Mali T624(2012)及以 NVIDIA egra k1(2014)及以上)。
  2. iOS平台 iOS平台PVRC格式支持最广泛苹果也推荐使用此格式2017芯片发布后开始支持(ETC/ETC2) 格式2014 AB芯片及以上开始支持ASTC格式

image.png

 

 

综上Andro口平台选用ETC + ASTC, iOS平台高版本使用ASTC 、低版本PVRTC兜底即可覆盖所有设备。开发者运行时可以 诵过API glgetString(GL_E XTENS IONS) 获取当前设备支持的 压缩纹理格式 WebGL 通过getSupportedExtensions()API获得相同信患。

 

带你读《2022技术人的百宝黑皮书》——内存优化: 纹理压缩技术(5)https://developer.aliyun.com/article/1340976?groupCode=taobaotech

相关文章
|
6月前
|
存储 算法 Android开发
带你读《2022技术人的百宝黑皮书》——内存优化: 纹理压缩技术(2)
带你读《2022技术人的百宝黑皮书》——内存优化: 纹理压缩技术(2)
141 0
带你读《2022技术人的百宝黑皮书》——内存优化: 纹理压缩技术(2)
|
2月前
|
存储 监控 NoSQL
【Redis深度专题】「核心技术提升」从源码角度探究Redis服务的内存使用、清理以及逐出等底层实现原理
Redis作为一种高性能的内存NoSQL数据库,其容量受限于最大内存的限制。用户在使用阿里云Redis时,除了对性能和稳定性有较高的要求外,对内存占用也非常敏感。然而,在实际使用中,一些用户可能会发现他们的线上实例的内存占用比预期的要大。
43 1
【Redis深度专题】「核心技术提升」从源码角度探究Redis服务的内存使用、清理以及逐出等底层实现原理
|
2月前
|
缓存 算法
内存系列学习(七):ARM处理器的快速上下文切换技术
内存系列学习(七):ARM处理器的快速上下文切换技术
24 0
|
3月前
|
开发框架 .NET API
绝顶技术:断点+内存映射组合的 CLR 超强 BUG?
你见过【断点+内存映射】制造了一个另类隐藏极深,强悍的 BUG 吗?这是一个虚拟机 CLR 的 BUG。不同于之前所遇见的 BUG 这次费时最多,但是问题已然清晰。
183 0
|
4月前
|
缓存 监控 Anolis
|
4月前
|
安全 Linux 程序员
「技术干货」一文搞懂C语言内存模型与栈
「技术干货」一文搞懂C语言内存模型与栈
|
6月前
|
存储 小程序 异构计算
带你读《2022技术人的百宝黑皮书》——内存优化: 纹理压缩技术(1)
带你读《2022技术人的百宝黑皮书》——内存优化: 纹理压缩技术(1)
121 0
带你读《2022技术人的百宝黑皮书》——内存优化: 纹理压缩技术(1)
|
6月前
|
存储
带你读《2022技术人的百宝黑皮书》——内存优化: 纹理压缩技术(3)
带你读《2022技术人的百宝黑皮书》——内存优化: 纹理压缩技术(3)
|
6月前
|
小程序
带你读《2022技术人的百宝黑皮书》——内存优化: 纹理压缩技术(5)
带你读《2022技术人的百宝黑皮书》——内存优化: 纹理压缩技术(5)
111 0
带你读《2022技术人的百宝黑皮书》——内存优化: 纹理压缩技术(5)
|
12天前
|
存储 编译器 C语言
C语言:数据在内存中的存储形式
C语言:数据在内存中的存储形式

热门文章

最新文章