实例化重复的贴图工具

“实例化重复的贴图”工具在整个场景中查找具有重复“位图”贴图的材质,并提供将它们实例化的选项。如果场景中有不同的材质使用了相同的纹理贴图,那么创建实例将会减少视频卡上的加载,从而提高视口的性能。

例如,如果您要渲染一个含有三种材质的场景,而这三种材质参考的是 MyMap.bmp 纹理贴图,则 3ds Max 将搜索该纹理贴图三次:为用到它的每种材质各搜索一次。但是,如果使用“实例化重复的贴图”工具,则可以创建重复贴图的实例,以便渲染器找到 MyMap.bmp 的第一个参考,并将其用于使用相同贴图的任何后续材质。

此工具在整个场景中进行搜索。无需选择对象或材质。

注: 为了能进行实例化,“位图”贴图的所有初始设置有关的方面都必须相同。例如,如果两个材质都使用了用作“漫反射”贴图的同一个位图图像,但初始“平铺”设置却不相同,那么它们的贴图就不可以实例化。

不支持将动画作为确定重复与否的条件,因此如果使用了这个工具,那么“位图”贴图参数动画中的差异都将丢失。例如,如果两个材质都使用了用作“漫反射”贴图的同一个位图图像,并且它们具有相同的初始“平铺”设置,但它们的“平铺”设置动画被设置为不同的连续值,则对两个贴图使用此工具后,会产生与第一个贴图相同的动画。

过程

要实例化所有重复的贴图,请执行以下操作:

  1. 打开场景。
  2. 在“材质编辑器”上,打开“工具”菜单并选择“实例化重复的贴图”。

    打开“实例化重复的贴图”对话框,显示以下内容:

    对话框显示一个列表,列出所有在场景中找到的精确重复的纹理贴图。搜索将包括具有相同路径和设置的所有找到的副本。

  3. 单击“全部实例化”按钮。

    所有相同的贴图都被实例化,该对话框关闭。

要仅实例化指定的贴图,请执行以下操作:

    可能只想实例化在指定材质中找到的一部分纹理贴图。

    注: 必须从“重复”列表中选择至少两个贴图。
  1. 打开场景。
  2. 在“材质编辑器”上,打开“工具”菜单并选择“实例化重复的贴图”。

    打开“实例化重复的贴图”对话框。

  3. 在“重复的纹理数”列表中,单击箭头按钮以打开重复纹理的列表,并选择要进行实例化的纹理。
  4. 在“重复”列表中至少选择两个贴图条目。

    如果选择的条目少于两个,将会在对话框顶部的状态字段中看到一个警告。

  5. 单击“实例化”。

    因为所有三个贴图都已实例化,此时,该对话框中显示 42 个重复的纹理。

  6. 继续实例化纹理或在完成后单击“关闭”。

界面

“实例化重复的贴图”工具的主用户界面是“实例化重复的贴图”对话框,该对话框可以在“材质编辑器”中的“工具”菜单中打开。这个工具可以全局使用,因此无需为了使用它而选择对象或材质。

该对话框由以下三部分组成:顶部的一个状态字段、包含重复纹理贴图的一个下拉菜单和包含贴图名称和其所属材质的一个列表。

[状态字段]
该“状态字段”不是交互式的。它会显示重复纹理和贴图的相关提示和警告。本章中包含的显示的消息为:
  • “未在该场景中找到重复的纹理。”– 在没有重复的场景中运行此工具。
  • “选择重复并按下“实例”来合并”– 在包含重复的场景中运行此工具。
  • “选定重复项包含动画参数。不支持将动画作为确定重复与否的条件,因此动画中的差异将丢失。”– 在一组重复项中出现了动画。
  • “必须至少选择两个贴图以便继续操作。”– 在选定一个重复项、或没有选定任何重复项时按下“实例化”按钮。
“重复的纹理数”列表
此下拉列表包含在场景中找到的所有方面都相同的贴图,包括纹理贴图路径和名称,以及初始参数设置。“重复的纹理数”后面的数字表示在场景中找到的组数。显示此列表时,只有第一个条目可见,而且列表激活后,可使用向上键和向下键滚动。
“重复”列表

在“重复的纹理数”列表中选择了纹理后,3ds Max 将在“重复”列表中显示其副本,显示贴图名称以及父材质的名称。“重复”后面的数字表示在场景中找到的副本数。此列表中的纹理可以单独选择。如果单击“实例化”按钮,只有这个列表中选定的副本才会合并成最终的实例。结果实例的名称就是列表中所选的第一个副本的名称。

全部实例化
对场景中所有的重复项进行合并,而不考虑在“重复的纹理数”或“重复”列表中所做的选择。
实例
仅对在“重复”列表中所选的重复项进行合并。合并后选定的重复项会从列表中消失。如果选择全部,相应的纹理也将从第一个列表中消失。
关闭
在当前点结束操作。