videowriter最小的编码格式_UE4 Lightmap格式解析

一、UE4光照图介绍

UE4的光照图分为低质量(LQ)和高质量(HQ)两种类型,引擎默认的,把HQ的光照图适用于PC/主机平台的静态光照,而LQ的光照图则用于移动平台。相比LQ形式,HQ光照图提供了更好的光照质量、更平滑的明暗交界过渡,但同时也会耗费更多的内存和Shader指令数。

UE4的高低两种质量的光照图均存储了以下三种信息:照明颜色、照明亮度、入射光线的簇的最大贡献方向,其在存储格式、编码方式上的不同决定了其质量上的差别。

1.低质量光照图(LQ)

. 使用24位的RGB8格式的文件存储光照信息,默认的,采用平台相关的压缩方式对光照图进行压缩(如ETC2,ASTC)以降低光照图的存储空间、内存占用和渲染时占用的GPU带宽。

. 光照信息分为上下两部分,上半部分存储的是线性空间的光照颜色和亮度的预乘信息,下半部分存储是入射光照的最大贡献方向

LQ光照图如下图所示,红框部分存储的就是入射光线的最大贡献方向

4e9d6de4a31e71e3c28a6fe34df656bf.png
图1

2.高质量光照图(HQ)

. 使用32位的RGBA8格式的文件存储HQ质量的光照图,同样的,采用平台相关的压缩方式对光照图进行压缩(如ETC2,ASTC),但即使同样ETC2方式进行压缩,HQ的的光照图由于多一个Alpha通道信息,同样尺寸的光照图,其大小会是LQ贴图大小的2倍。

光照图的RGB通道上下两个分区包含的信息和低质量光照图类似,上半部分存储的是光照的颜色信息(和LQ不同,它不包含亮度信息且是在gamma空间),下半部分存储的是入射光线的最大贡献方向。

光照图的A通道存储的是光照图的亮度信息,同样它分为上下两个部分,上半部分表示的是光照亮度的整数部分,下半部分表示的是亮度信息的小数部分。

HQ光照图示例的RGB和Alpha部分如下图所示:

5822de0b0f8bd1ccdc183a0bc97ad81d.png
图2

61f625518ff7aa6c2fd5b57925566671.png
图3

可以看到HQ和LQ的光照图中,RGB通道的下半部分存储的方向信息部分基本一致(实际上略有不同,下面会有具体的分析),但上半部分因为颜色空间的不同,同时LQ的颜色又预乘了亮度信息,从而明显的比HQ图要暗很多。

二.光照图的编码方式

由于光照亮度的生成时其亮度范围远大于1的浮点数区间,故其最好的存储方式应当是浮点纹理,比如通用的exr格式。exr的缺点是更大的存储、内存和渲染时的带宽占用,同时有多平台兼容性问题,故目前主流的商业引擎或各大厂的自研引擎,其在移动端的光照图也大都使用RGB8或RGBA8图进行存储。

把亮度数据从浮

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值