示例:创建 Interactive 明暗器网络以混合两个纹理

此示例演示了如何使用 Interactive 材质和 ShaderFX 节点创建明暗器网络,以允许您通过绘制顶点混合两个纹理。

注: 在 3ds Max 2018.4 Update 中,Stingray 基于物理的明暗器被重命名为 Interactive

它类似于“ShaderFX 介绍性示例工作流”主题中的“使用顶点颜色节点混合纹理”示例,但此示例使用的是 Interactive“标准基础”节点及其关联的 ShaderFX 节点。

准备图形:

  1. 在场景中创建一个平面。在“透视”视口中,按 G 禁用栅格显示。
  2. 打开材质编辑器,选择“DirectX 明暗器”材质,并将其应用到平面。
  3. 在“DirectX 明暗器”卷展栏上,从下拉列表中选择“Interactive”,然后单击“打开 ShaderFX”。
  4. 在“ShaderFX”窗口中,单击以高亮显示“标准基础”节点。在“属性”卷展栏中,单击“使唯一”将明暗器设为自定义明暗器。
  5. 在“属性”卷展栏中,选择“预设材质”“自定义”,然后从 Interactive 预设中删除其他节点。

    该明暗器网络现在仅包含标准基础节点。

将节点添加到图表:

  1. 添加“数学”“线性插值”节点。
  2. 添加两个“示例”“示例纹理”节点。
  3. 添加一个“顶点输入”“TexCoord0”节点。
  4. 将 Textcoord0 节点的 RG 输出连接到两个采样纹理节点的 UV 输入,以及将每个采样纹理节点的 RGBA 输出连接到线性插值节点的“值”输入。
  5. 添加一个“输入”“材质变量”节点。
  6. 高亮显示该“材质变量”节点,然后在其“属性”面板中选择“类型”“标量”。
  7. 将材质变量节点的“结果”输出连接到线性插值节点的“混合”输入,以及将线性插值节点的“结果”输出连接到“标准基础”节点的“基础颜色”输入。

    图形现已完成。在接下来的步骤中,将调整用户界面,并指定实际的纹理贴图。

设置纹理和 BlendMaps 参数:

  1. 单击上方的“纹理贴图”节点以使其高亮显示,然后在“属性”面板中将其名称更改为 Texture1
  2. 将另一个“纹理贴图”节点的名称更改为 Texture2
  3. 将“材质变量”节点的名称更改为 BlendMaps
  4. 最小化 ShaderFX 编辑器。
  5. 在“材质编辑器”“参数”卷展栏中,单击“Texture1”按钮并指定一个贴图;例如,Complete-Right-Side copy.jpg
  6. 单击“Texture2”按钮并指定一个不同的贴图;例如,fac3.jpg
  7. 此示例使用的纹理位于 \tutorials\sceneassets\images 文件夹中,该文件夹在下载教程文件后可用。请参见 http://www.autodesk.com/3dsmax-tutorials-scene-files-2016。 (如果使用 fac3.jpg 贴图,请确保在“文件”对话框中已禁用该序列!)

使用 BlendMaps 调整纹理贴图的混合:

保存工作:

  1. 再次打开“ShaderFX 编辑器”。
  2. 在“ShaderFX 编辑器”菜单栏上,选择“文件”“导出图形”。
  3. 在“文件”对话框中,将新明暗器另存为 blend_example.sfx
  4. 关闭“ShaderFX 编辑器”。
  5. 将场景另存为 blend_example.max