绑定
This type of node is used to specify more objects that can use this material in addition to the main object type defined in the node argument of the BaseMaterial. To add a new type of object for the material, you must bind your new custom node to the original node this material is already binded to.这种类型的节点除了在 BaseMaterial 的 node 参数中定义的主要对象类型之外,还用于指定更多可以使用该材质的对象。要为材质添加新类型的对象,您必须将新的自定义节点绑定到该材质已绑定到的原始节点。
The syntax is the following:语法如下:
Bind from_node_name = to_node_name <defines=”SOME_UNIQUE_DEFINE”>
Usage Examples使用示例#
BaseMaterial <node=ObjectMeshStatic> // the material is set to be used only for ObjectMeshStatic nodes
{
Bind ObjectMeshStatic = ObjectMeshDynamic // set this material to be used by ObjectMeshDynamic as well
Bind ObjectMeshStatic = ObjectMeshSkinned <defines="SKINNED"> // also set this material to be used by ObjectMeshSkinned with an additional define for shaders
Bind ObjectMeshStatic = ObjectMeshCluster <defines="USE_CLUTTER_CLUSTER_PARAMETERS">
Bind ObjectMeshStatic = ObjectMeshClutter <defines="USE_CLUTTER_CLUSTER_PARAMETERS">
Bind ObjectMeshStatic = ObjectMeshSplineCluster <defines="USE_CLUTTER_CLUSTER_PARAMETERS,SPLINE"> // compile material's shaders with two additional defines
}
We have added five more types of nodes to be supported by this material, some with additional defines. The corresponding defines will be used to compile shaders for the particular node type. For instance, the material's shader for ObjectMeshSkinned will be compiled with the SKINNED define enabled.我们添加了另外五种类型的节点以受此材料支持,其中一些具有附加定义。相应的定义将用于编译特定节点类型的着色器。例如,ObjectMeshSkinned 的材质着色器将在启用 SKINNED 定义的情况下编译。
Arguments论据#
definesdefines#
Definitions separated by a comma without any space. You can also specify your own custom defines:用逗号分隔的定义,没有任何空格。您还可以指定自己的自定义定义:
Bind main_node = new_node <defines=”SOME_UNIQUE_DEFINE”>