参考:

https://www.khronos.org/registry/DataFormat/specs/1.1/dataformat.1.1.html#ETC1
https://www.khronos.org/registry/OpenGL/extensions/OES/OES_compressed_ETC1_RGB8_texture.txt

ETC1每4x4像素块编码为64位的字节数据,每一个像素块又分为两个2x4子块(由一个“flip”位控制水平或竖直划分),每个子块包含一个3位的修饰表索引(modifier table index)和一个基本颜色值,这两个颜色值要么是2*RGB444要么是RGB555+RGB333(由一个“ diff”位控制是哪一种)。

  • bit63-40,用于保存基础24位颜色值,具体使用哪种颜色值,参考bit33

  • bit39-37,被subblock1使用;

  • bit36-34,被subblock2使用;

重点:
Modifier table从左到右应该为:-b,-a,+a,+b值,使用像素颜色索引值来计算像素颜色值会用到.

  • bit33=0,即diff(erential)=0时, RGB444+RGB444

  • bit33=1,即diff(erential)=1时, RGB555+RGB333

  • bit32=0,即flip=0时

  • bit32=1,即flip=1时

  • bit31-0,像素索引值,其索引表如下:

每个像素均由两位确定像素颜色索引值

举个例子:

for instance, if the table code word is 010b = 2, then the modifier table [-29, -9, 9, 29] is selected. ; the pixel index bits are 01b = 1, and the modifier table [-29, -9, 9, 29] is used, then the modifier value selected for that pixel is 29 (see Table 62). This modifier value is now used to additively modify the base color. For example, if we have the base color (231, 8, 16), we should add the modifier value 29 to all three components: (231+29, 8+29, 16+29) resulting in (260, 37, 45). These values are then clamped to [0..255], resulting in the color (255, 37, 45), and we are finished decoding the texel.

ETC1压缩纹理图片格式相关推荐

  1. ETC1压缩纹理格式详解

    本来以为,ETC1作为Android 设备的OpenGL标准,开源且最常用的的一种压缩纹理格式,总会有人去翻译一下khronos的文档,读一下代码,给大家作个普及的,不料就是搜不到.没办法,尽管英文不 ...

  2. android,ETC1压缩纹理带alpha通道

    天降大任于斯人也,必先苦其心志,劳其筋骨,饿其体肤,空乏其身,行指乱其所为,所以动心忍性,曾益其所不能. --<孟子> 1,ETC纹理. opengl2.0的所有android机器支持ET ...

  3. 图片压缩怎么弄?多种图片格式压缩大小的方法

    平时接触的图片格式有许多种,比如jpg.png.gif.tiff.webp等,不同的场景都需要用不同的图片,但是当这些图片大小都不符合我们的使用要求时,该怎么去压缩图片大小呢?小编今天给大家分享一款支 ...

  4. 各种移动GPU压缩纹理的使用方法

    介绍了各种移动设备所使用的GPU,以及各个GPU所支持的压缩纹理的格式和使用方法. 1. 移动GPU大全 目前移动市场的GPU主要有四大厂商系列: 1)Imagination Technologies ...

  5. 【Web技术】1064- 前端9种图片格式基础知识, 你应该知道的

    彩色深度 彩色深度标准通常有以下几种: 8位色,每个像素所能显示的彩色数为2的8次方,即256种颜色. 16位增强色,16位彩色,每个像素所能显示的彩色数为2的16次方,即65536种颜色. 24位真 ...

  6. 你应该知道的前端9种图片格式基础知识

    彩色深度 彩色深度标准通常有以下几种: 8位色,每个像素所能显示的彩色数为2的8次方,即256种颜色. 16位增强色,16位彩色,每个像素所能显示的彩色数为2的16次方,即65536种颜色. 24位真 ...

  7. 怎么压缩png图片的大小?4个简单高效工具分享

    怎么压缩png图片的大小?大家都知道jpg和png是目前电脑上最主流的两大图片文件格式,jpg图片的体积比较小,因为它属于有损压缩的图片格式,而png图片的体积相对就要大很多了,因为png属于无损压缩 ...

  8. 聊一聊几种常用web图片格式:gif、jpg、png、webp

    前言 在大多数的web页面中,图片占到了页面大小的60%-70%.因此在web开发中,不同的场景使用合适的图片格式对web页面的性能和体验是很重要的.图片格式种类非常多,本文仅针对几种web应用中常用 ...

  9. 学会这个图片格式转换技巧,原来PNG转JPG格式这么简单

    说到PNG和JPG格式这两个格式,相信大家都不陌生,两者都是常见常用的图片格式,优缺点各异,PNG格式可以保存透明的背景图片,JPG则是通用性广,利于网络传输.两者画质不相上下,不过就通用性和熟悉度来 ...

最新文章

  1. React项目实践系列一
  2. python怎么导入时间-python 插入日期数据到Oracle
  3. Azure实践之automation自动整理资产信息
  4. 504 Gateway Time-out错误的解决方法
  5. html登入弹框插件,基于jQuery的弹出框插件
  6. java enum in class_Java 8需要一个转换,而Java 7没有 – enum.getClass/getDeclaringClass
  7. obj.val 非数组_在Ruby中使用Array.new(size,obj)创建数组
  8. Mybatis源码分析之(四)mapper访问数据库的底层原理(代理方法中具体访问数据库的细节)
  9. freemarker中运算符_freemarker常见语法大全
  10. php refresh blank,php – Laravel Blank白页
  11. DWM1000DISCOVERY开发板简介
  12. 商用密码产品认证-IPSec/SSL网关技术与产品
  13. 【行业云说直播间】-智慧能源 低碳未来正式上线
  14. Qt QStringLiteral
  15. MySQL中的升序降序以及字段的升序降序
  16. 软考之路(一)千里之行始于足下
  17. 微信开发-微信公共账号申请与接入(1)
  18. 计算机系统概述 —— 硬件系统
  19. 以马丁格尔(翻倍加仓)为基础的长线交易策略
  20. 【单片机原理及接口技术】【理解】七种寻址方式

热门文章

  1. 长得类似铁甲小宝的机器人_童年神作铁甲小宝机器人实力排行 主角卡布达只能排到第四位...
  2. 当秀美小城遇上“懂行人”:怀凌云壮志,谱时代新篇!
  3. Web自动化测试06
  4. Getting started with Chrome Dev Editor
  5. STM32的SPI的原理与使用(W25Q128附代码)
  6. sublime 3 本地安装package control插件、channel_v3.json文件配置下载
  7. java lua脚本_Java中使用LUA脚本语言
  8. Week of 1.17
  9. python 字典操作中items的用法以及python中的集合操作
  10. 新手购买空间和域名感受