Skip to main content

为标准着色器制作高光/金属度贴图

       在使用标准着色器时,推荐将金属度贴图和光滑度贴图合并为同一个贴图文件。此外,遮挡贴图和细节遮罩也可以整合为同一个贴图文件,这样可以节省内存,是一个很好的优化方法。

  • 作为参考,红色通道表示金属度,绿色通道表示遮挡贴图,蓝色通道表示细节遮罩,透明通道表示光滑度。(译者注:这些贴图向着色器传达的强度信息只与像素的明度有关,与颜色无关)。
  • 对于带有镜面反射效果的材质,推荐将高光贴图和光滑度贴图合并,但要注意不要混合遮挡贴图和细节贴图。

       根据您使用的工具的差异,处理这个问题可能会遇到麻烦。例如,通过 Photoshop 保存半透明图像时,透明像素会被替换为纯白色像素,这将会破坏高光贴图!另外,由于Windows中的一个古老的错误,许多图片处理工具也可能对导入的图像进行同样的处理。

使用SmartTexture创建组合贴图

       利用 SmartTexture 插件,您可以轻松地将多个不同用途的贴图合并为单个贴图文件,而且这一过程完全自动化。只需将材质球内的各个贴图纹理单独保存,然后创建一个SmartTexture资源,将它们关联在一起。

       要安装SmartTexture,请遵照这里的说明进行操作:https://github.com/s-ilent/SmartTexture

       一旦安装完成,您就可以在Unity中创建新的SmartTexture资源,并将单独的贴图一一拖入,实现贴图的合并,以提高工作效率。

使用chaiNNer合并贴图

       ChaiNNer是一个非常便利的贴图操作工具,您可以使用它将多个贴图合并为一个,也可以利用神经网络来放大贴图的分辨率。

       您可以在这里下载chaiNNer:https://chainner.app/

       您可以将贴图拖入窗体,然后使用Seperate RGBA节点将其分解成各自的组成部分,最后通过Combine RGBA重新组合。此外,ChaiNNer还支持各种类型的过滤器,并可批量处理图像。

使用ImageMagick合并镜面反射和光滑度

       ImageMagick提供了一种简单而有效的方法,在Unity之外,仅需几个简单步骤就可以合并您的贴图——只要您知道如何使用命令行。

       首先,下载ImageMagick(推荐兼容HDRI的版本):https://imagemagick.org/script/download.php#windows

       ImageMagick是一个历史悠久的开源命令行工具集,用于编辑图像。人们使用IM和批处理脚本完成了许多奇妙的事情。虽然我们的脚本没有那么奇妙,但也同样实用。

       以下是您需要使用的脚本:

magick convert %1 %2 -alpha off -compose CopyOpacity -composite PNG32:%1_result.png

       此外,我们还准备了一个批处理文件:

_JoinRGBAlpha.bat

       下载并保存在待处理的图片文件目录中,然后选择两个相同尺寸的图片文件,将这两个文件拖放到批处理文件的图标上。例如,您可以选择您的高光贴图和光滑度贴图的文件,然后将它们拖放到批处理文件的图标上。最终输出将是这两个图像的合并结果,而第二个图像将被添加到透明通道中——这就为 Unity 生成了一个完全准备好的高光+光滑度贴图!然后,将生成的文件导入 Unity 项目中即可。