标签: dxt

Frostbite PBR:在相同纹理的单独纹理通道上进行不同的压缩

是否有可能,如果可以的话,在OpenGL4.x中的不同通道上创建和读取具有不同压缩算法的RGBA纹理:

示例A没有实际意义:

  1. RG通道存储以3Dc编码的法线贴图
  2. B通道存储高度值,让我们说一些编码的tesselation
  3. 信道存储未经压缩的原始MaterialID

例B:

  1. RGB存储使用DXT1压缩的材料参数
  2. A保存MaterialID而不压缩

背景:

在第15页和第18页的Frostbite实施基于物理的渲染PBR(PDF)中,作者描述了他们如何将材料参数构建到不同的纹理通道中.他们还提到他们避免在某些频道上进行纹理压缩,而不是详细说明它们所指的那些频道.

第15页

所有基本属性(Normal,BaseColor,Smoothness,MetalMask,Reflectance)都需要可混合以支持延迟贴花.像MaterialId这样的不可混合属性存储在alpha通道中.我们还避免了可能影响混合质量的压缩和编码机制.

第18页

我们选择避免​​对我们的一些属性进行压缩,并在这种情况下依赖简单的线性插值alpha混合.

compression opengl textures dxt pbr

5
推荐指数
1
解决办法
242
查看次数

标签 统计

compression ×1

dxt ×1

opengl ×1

pbr ×1

textures ×1