请问如何判断手机支持的图片格式(如ETC1、ASTC)

现在需要收集用户手机支持图片类型来确定图片压缩方案
请问如何判断用户手机是否支持某种格式(如astc)

在 web 上可以通过 webgl 来获取支持格式,手机上不知道怎么办了

到时很想了解一下 就算你知道某个手机是否支持了 但你的资源压缩的方式也是打包前固定好的了 就算不支持 你也没法动态改了 那么这个工作有什么用是?

现在是先收集数据,后面根据数据来决定压缩打包纹理的

不需要统计了,现在可以统一ASTC

不是自己个人项目 ,无法做这种决策:joy: :joy: :joy:

至少从2020年开始,都大量开始使用ASTC了,这都2022年了。
iOS的话,iPhone 6都支持,你需要支持iPhone 6以下的设备吗?
安卓的话,2014年发布的小米4开始支持。

ETC1、ASTC格式不是很清楚,ETC2的话,海外市场,有些安卓系统版本4.4或者7.0了,但也未必支持ETC2,还是得加入软解码(实现方式在论坛里搜下有帖子)

CCConfiguration.cpp
void Configuration::gatherGPUInfo方法
模仿etc1的写法
_supportsETC1 = checkForGLExtension(“GL_OES_compressed_ETC1_RGB8_texture”);
加入astc的判断
_supportsASTC = checkForGLExtension(“GL_KHR_texture_compression_astc_ldr”);

至于如何回到游戏js层 自己看代码咯

脚本到是看到了,搞了半天实在不知道怎么在游戏中调用 :rofl:

不过还是感谢回复

嗯嗯
但是我目前要做的主要是搜集准确的用户数据
还是需要处理调用 api 获取才行

你现有游戏用户量已经很大了吗?如果用户量没有足够大,你统计出来的数据也没啥意义呀。。是吧

ASTC 已经普及了,不支持的设备数量已经不会影响你游戏的成败了。