opengl es 3.0支持哪些设备?主流手机兼容性速查攻略

前两天翻抽屉找备用机,突然看见个老古董荣耀V10,想着能不能跑点简单的3D效果。结果一查OpenGL ES 3.0支持给我整懵了,网上说法乱七八糟的。干脆自己翻资料+真机实测,记录下踩坑过程。

第一步:先搞明白OpenGL ES 3.0是啥时候冒出来的

打开电脑一顿乱搜,发现这玩意儿2012年就发标准了。掰指头算算:2014年之后的安卓机,理论上都能跑!但“理论上”三个字坑死人,得看厂家脸色和芯片祖宗。

第二步:把手头的破烂全翻出来测

我把自己跟朋友的老手机都薅来了,装了个GLES Info挨个查。结果发现些门道:

  • 华为/荣耀的老麒麟:麒麟950(Mate8那代)开始,清一色支持3.0。但更老的麒麟920(荣耀6)只有OpenGL ES 2.0!网上居然还有人吹这芯片支持3.0,实测打脸。
  • 小米老高通:骁龙800(小米3)就支持了,但红米Note3(骁龙650)也支持。反而前两年某些百元机用的联发科MT6735,只给到2.0!差点被参数表骗了。
  • 三星老旗舰:Galaxy S4(2013年!)的骁龙600就能跑3.0,韩版Exynos 5居然也行。三星这点倒是实诚。

第三步:遇到个奇葩坑

本来觉得2018年后的手机肯定稳了,结果测试红米Note5(骁龙636)时翻车!系统自动升级到MIUI 12后,OpenGL ES版本从3.1倒退回3.0!问客服说是“驱动优化”,我信你个鬼!

总结的血泪教训

查完几十部手机发现:

  • 别信手机发布会吹的芯片参数,亲自用GLES Info跑一遍最靠谱
  • 华为2015年后、小米2014年后(避开超低端)、三星2013年后的机器基本都行
  • 重点避坑:二手老荣耀、运营商充话费送的山寨机、还有被魔改系统的老小米

对了,上周相亲吃饭还闹个笑话。姑娘用台冷门TCL手机,我职业病犯了当场给人测OpenGL ES版本,结果发现只支持到2.0…空气突然安静了五分钟,这破习惯真得改改。