Jam*_*shy 5 compression opengl textures dxt pbr
是否有可能,如果可以的话,在OpenGL4.x中的不同通道上创建和读取具有不同压缩算法的RGBA纹理:
示例A没有实际意义:
例B:
背景:
在第15页和第18页的Frostbite实施基于物理的渲染PBR(PDF)中,作者描述了他们如何将材料参数构建到不同的纹理通道中.他们还提到他们避免在某些频道上进行纹理压缩,而不是详细说明它们所指的那些频道.
第15页
所有基本属性(Normal,BaseColor,Smoothness,MetalMask,Reflectance)都需要可混合以支持延迟贴花.像MaterialId这样的不可混合属性存储在alpha通道中.我们还避免了可能影响混合质量的压缩和编码机制.
第18页
我们选择避免对我们的一些属性进行压缩,并在这种情况下依赖简单的线性插值alpha混合.
OpenGL 或硬件不支持在不同通道上读取不同压缩的纹理。当然,我们可以创建一个预通道,将这种手工制作的纹理分割成单独的纹理,然后分别解压缩它们。
正如 Nicol Bolas 所建议的,Frostbite PBR 实施避免了由于混合而产生的压缩。
| 归档时间: |
|
| 查看次数: |
242 次 |
| 最近记录: |