Skip to main content

为标准着色器创建镜面反射/金属贴图

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

  • 标准着色器建议使用红色通道表示金属度,绿色通道表示遮挡贴图,蓝色通道表示细节遮罩,通过Alpha通道传达光滑度信息。(译者注:这些贴图向着色器传达的强度信息只与像素的明度有关,与颜色无关)。
  • 对于镜面反射材质,推荐将镜面反射和光滑度合并为同一贴图,但要注意不要混合遮挡和细节信息。

根据您使用的工具的不同,处理这个问题可能会比较困难。例如,当使用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

要使用它,只需选择两个相同大小的图像,然后将这两个图像拖放到批处理文件的图标上。例如,您可以选择您的镜面反射贴图和光滑度贴图,然后将镜面反射贴图拖放到批处理文件的图标上。最终输出将是这两个图像的合并结果,而第二个图像将被添加到Alpha通道中——这为Unity创造了一个准备好的镜面反射和光滑度贴图!然后,您可以将生成的文件导入到Unity中。