Unity 材质纹理导入浅析
发布网友
发布时间:2024-10-04 13:16
我来回答
共1个回答
热心网友
时间:2024-10-04 14:07
在游戏开发中,PBR光照着色模型已广泛应用。基于金属度的着色模型具有多个纹理属性通道,包括Base Color、Metallic、Roughness、Normal等。在考虑光照通道时通常不涉及Emission和Mask贴图。
选择最佳的纹理打包方式时,应遵循信息存储与压缩原则。不考虑压缩情况下,10个通道信息可压缩至3张贴图,每像素存储80位信息。考虑压缩时,例如使用BC7或ETC2格式,3张贴图压缩至约24位/像素。ASTC格式甚至可达0.89位/像素,但压缩会带来图像失真。
游戏渲染通常使用基于块压缩的有损纹理格式,以实现高速解压。最大信息熵原则被广泛用于游戏纹理压缩,其原理是存储每个像素的量化位和最小、最大值,利用像素块之间的空间和通道相关性来减少压缩损耗。
理解压缩原理后,合理选择贴图布局至关重要。ASTC格式对法线纹理优化明显,使用NormalMap ASTC6x6时,法线数据压缩率翻倍,与Default ASTC4x4效果相似。URP Demo中的纹理布局合理,适用于PC与移动端。对于不满意的四通道压缩效果,可考虑使用Normal RG与单一通道组成的均衡组合。
有研究显示,5个通道仍能保持较高的信噪比,跨贴图压缩能充分利用通道相关性,而块压缩专注于空间相关性。这可能意味着通过2张贴图可实现更好的压缩效果,但实际应用需权衡信息损失与压缩效率。