借助 DirectX 明暗器材质,可使用 DirectX (Direct3D) 明暗器对视口中的对象进行明暗处理。
使用 DirectX 明暗处理,视口中的材质可以更精确地显现材质如何显示在其他应用程序中或在其他硬件上,如游戏引擎。可以使用此材质,当您使用 Nitrous 驱动程序(默认驱动程序为 Nitrous Direct3D 11)或旧版 Direct3D 驱动程序。
DirectX 明暗器材质可使用以下类型的明暗器:
FX 文件定义了一个 DirectX(DX9 或 DX11)明暗器。FX 文件是使用“高级渲染语言”(HLSL)标准创建的文本文件。
默认情况下,DirectX 明暗器(包括 FX 文件)保存在 3ds Max 程序目录下的 \maps\fx\ 中。
“DirectX 明暗器”材质为您提供访问 ShaderFX 的权限,通过其可创建硬件明暗器树,并将它们保存为 HLSL、CGFX 或 GLSL 文件。您可以使用 FX 文件扩展名保存 HLSL 文件,使这些文件可用于“DirectX 明暗器”材质。
Quicksilver 硬件渲染器可以渲染使用 FX 文件或 ShaderFX 树的 DirectX 材质。
XSML 文件可以采用 XMSL 格式存储一个或多个明暗器树。您可以在 Slate 材质编辑器中使用 MetaSL 明暗器;此外,使用“贴图到材质转换”节点,可以将 MetaSL 明暗器树保存为 XMSL 文件。(保存后,将无法在 3ds Max 中编辑 XMSL 文件。)
开发 MetaSL 明暗器可使用 mental mill® 应用程序。为使 MetaSL 明暗器能够与 mental ray 一起使用,必须通过 mental mill 将其另存为现象。mental mill Artist Edition 用户指南对现象作了说明。
mental ray 渲染器可以渲染使用 XSML 文件的 DirectX 材质。
通常,FX 明暗器编码为使用特定数量的灯光:通常只使用单个灯光。如果您打开的 FX 文件是这样编码的,则特定于明暗器的卷展栏会显示一个控件,供您选择要使用的灯光。例如:
另一方面,XMSL 明暗器未编码为使用特定的灯光,因此它们使用场景中的所有活动灯光。
将贴图分配给 DirectX 明暗器的可处理贴图的组件时,可从以下贴图类型中进行选择:
单击可显示一个用于打开明暗器的文件对话框。默认情况下,FX 格式(Direct3D 效果)处于活动状态时,明暗器将为 standardfx11.fx。
要打开 XMSL 文件,请从文件对话框中的“文件类型”下拉列表中选择该文件类型。
单击此按钮可重新加载活动的明暗器文件。要更新明暗器文件,可以编辑它,然后单击“重新加载”。不必重新启动 3ds Max 就可以查看对明暗器的更改所产生的效果。
当“使用 ShaderFX”处于活动状态时,ShaderFX 节点树将覆盖当前 FX 或 XMSL 明暗器。
有关 ShaderFX 编辑器的快速简介,请参见 ShaderFX 介绍性示例工作流。另请参见关于 Shade FX 节点、使用 ShaderFX 节点和使用 ShaderFX 组。
出现在“DirectX 明暗器”卷展栏下面、“技术”卷展栏上面的卷展栏是您所选择的明暗器的界面。这些卷展栏是每个明暗器特定的卷展栏。
例如,如果选择 XMSL 文件,将针对明暗器树中的每个 MetaSL 明暗器显示一个卷展栏。您可以本地调整当前场景的明暗器设置,而 XMSL 文件保持不变。
对于使用 XMSL 文件的 DirectX 材质,本地可编辑 MetaSL 明暗器卷展栏的示例
如果加载不适合 3ds Max 的明暗器,则您可能会看到显示一条错误消息的卷展栏,而非参数。例如:
一个 XSML 文件可以包含多个明暗器。打开其中一个明暗器时,“技术”卷展栏具有一个下拉列表,可供您选择材质将使用的明暗器。
指定材质以控制软件明暗处理和应用了 DirectX 明暗器材质的对象的渲染。Nitrous 和旧版 Direct3D 视口使用 DX 明暗处理。OpenGL 视口则不使用。非 Quicksilver 硬件渲染器的渲染使用软件明暗处理。
通常您希望选择明确标明场景中哪些对象已应用了 DirectX 明暗器材质的材质。
如果您的系统上无法使用 DirectX,但您仍然指定了 DirectX 明暗器材质(通过使用“材质/贴图浏览器”的“不兼容”选项),则“材质编辑器”中仅显示此卷展栏。