为啥我们的项目中从来不使用ETC1纹理格式

我们通过不同格式的效果来比较下就明白了

无压缩RGBA32格式的效果(所有GPU支持)

请无视接缝问题,那个是美术的UV给展错了。。。

ATC压缩格式(Adreno系列GPU支持的格式)

肉眼几乎干不出差别,饱和度有稍许下降

PS:DXT、PVR的效果也差不多是这样,这里就不贴了,有兴趣的人自己可以试验下

最后是万恶的ETC1(所有GPU支持)

注意下图的红色箭头所指的线,这个仅出现在ETC1格式上,怀疑是它的压缩算法有缺陷,但具体原因并未做过调查

结论

这东西根本不能用啊,特别是对比度比较大的图片,会产生各种莫名其妙的瑕疵。

很纳闷一些项目用ETC1是怎么处理这种效果的,问了下公司里别的项目组的老大,建议是换成RGBA16或者RGB16加上降低解析度也比用ETC1效果好。

PS:OpenGL ES果然该死,这个唯一默认支持的压缩格式ETC1不但没Alpha通道,压缩之后还会产生这么大的瑕疵。。。

来自为知笔记(Wiz)

时间: 2024-10-29 19:11:09

为啥我们的项目中从来不使用ETC1纹理格式的相关文章

Vue 实际项目中你可能会遇见的坑

纸上得来终觉浅,绝知此事要躬行! Vue的文档和教程看的太多,小的demo做的多,也不如自己实际的进行一个完整项目的开发.只有做了才知道原来问题这么多,这里列举了一些你做demo教程可能不会遇见的坑. 一.项目的登录拦截及用户权限访问控制问题. 一个很常见的需求就是对未登录的用户进行路由拦截和用户的权限访问,如果你的项目之前是通过后台控制访问路由的,那么之前的后端现在可能需要在前端也需要控制了,由于我们用vue脚手架搭建的都是纯前端的路由访问,先看看我们的一般的项目路径: 你可能会注意到Vue的

Vue 实际项目中你可能会遇见问题

纸上得来终觉浅,绝知此事要躬行! Vue的文档和教程看的太多,小的demo做的多,也不如自己实际的进行一个完整项目的开发.只有做了才知道原来问题这么多,这里列举了一些你做demo教程可能不会遇见的坑. 一.项目的登录拦截及用户权限访问控制问题. 一个很常见的需求就是对未登录的用户进行路由拦截和用户的权限访问,如果你的项目之前是通过后台控制访问路由的,那么之前的后端现在可能需要在前端也需要控制了,由于我们用vue脚手架搭建的都是纯前端的路由访问,先看看我们的一般的项目路径: 你可能会注意到Vue的

在项目中缓存是如何使用的?缓存如果使用不当会造成什么后果?

1.面试题剖析 (1)在项目中缓存是如何使用的? 这个,你结合你自己项目的业务来,你如果用了那恭喜你,你如果没用那不好意思,你硬加也得加一个场景吧! (2)为啥在项目里要用缓存呢? 用缓存,主要是俩用途,高性能和高并发 高性能 假设这么个场景,你有个操作,一个请求过来,吭哧吭哧你各种乱七八糟操作mysql,半天查出来一个结果,耗时600ms.但是这个结果可能接下来几个小时都不会变了,或者变了也可以不用立即反馈给用户.那么此时咋办? 缓存啊,折腾600ms查出来的结果,扔缓存里,一个key对应一个

阿里Java面试题剖析:项目中缓存是如何使用的?为什么要用缓存?缓存使用不当会造成什么后果?

面试原题 项目中缓存是如何使用的?为什么要用缓存?缓存使用不当会造成什么后果? 面试官心理分析 这个问题,互联网公司必问,要是一个人连缓存都不太清楚,那确实比较尴尬. 只要问到缓存,上来第一个问题,肯定是先问问你项目哪里用了缓存?为啥要用?不用行不行?如果用了以后可能会有什么不良的后果? 这就是看看你对缓存这个东西背后有没有思考,如果你就是傻乎乎的瞎用,没法给面试官一个合理的解答,那面试官对你印象肯定不太好,觉得你平时思考太少,就知道干活儿. 面试题剖析 项目中缓存是如何使用的? 这个,需要结合

django项目中购物车的实现

对于做项目而言,最重要的是分析清楚自己负责模块的思路,确定思路后,把每一步实现的步骤确定后,根据步骤,去实现代码,测试. 购物车的逻辑:    登录用户可以添加购物车,未登陆用户页可以添加到购物车    登陆用户的保存user.id sku_id count selected      保存在redis中,以hash和set两种方式保存    未登陆用户保存sku_id count selectd  保存再cookie中    cart = {            sku_id:{count:

用java写一个远程视频监控系统,实时监控(类似直播)我想用RPT协议,不知道怎么把RPT协议集成到项目中

我最近在用java写一个远程视频监控系统,实时监控(类似直播)我想用RPT协议,不知道怎么把RPT协议集成到项目中,第一次写项目,写过这类项目的多多提意见,哪方面的意见都行,有代码或者demo的求赏给我,谢谢

DotNet项目中的一些常用验证操作

在项目中需要对用户输入的信息,以及一些方法生成的结果进行验证,一般在项目中较多的采用js插件或js来进行有关信息的校验,但是从项目安全性的角度进行考虑,可对系统进行js注入. 如果在后台对用户输入的信息进行验证会相对的安全,在出现信息验证不合法时,可以直接在程序中抛出异常,终止程序的运行. 现在提供几种较为常用的验证方法,可以减少在项目中开发时间和错误性: 1.判断域名:         /// <summary>         /// 普通的域名         /// </summ

javaWeb项目中如何实现在线查看pdf文件

最近有需求要实现在网页直接查看pdf,word,excel文件.但是实际当中并没有很好的开源插件供我们使用,确实有一些付费的插件不错,也很好用,但是对于我来说都不适合. 现在只是单纯的找到了围魏救赵的方法. 就是先实现显示pdf文件,其他文件用别的方式去转成pdf.虽然这个方法确实不好,但是也是没有办法的办法了,如果以后能有更好的,那就再发布别的吧. 这里我就直接介绍pdf的显示方法. 直接上干货. 首先在E:\tomcat8\webapps这个目录下面拷贝下面这个文件 http://yunpa

Python+Selenium进行UI自动化测试项目中,常用的小技巧2:读取配置文件(configparser,.ini文件)

在自动化测试项目中,可能会碰到一些经常使用的但 很少变化的配置信息,下面就来介绍使用configparser来读取配置信息config.ini 读取的信息(config.ini)如下: [config]platformName=AndroidappPackage=com.sheinsideappActivity=.module.GuideActivitybaseUrl=http://0.0.0.0:4723/wd/hubfindElementTimes=10[cmd]openAppium=nod