VMDL 材质群组
< Zh | Dota 2 Workshop Tools
		
		
		
		Jump to navigation
		Jump to search
		材质群组(Material Groups)提供了一种方式来对你的模型建立不同的材质,这些通常被称之为皮肤。
显示
- 材质群组(Material Groups) 在大纲(outliner)中的 "材质群组列表(Material Group List)" 菜单下。
- 选择材质组选项将切换到该材质组所在的视窗。
创建
编辑
- 添加材质群组:选择“材质群组列表(Material Group List)”项,在属性编辑器中按下绿色“+”按钮。
- 编辑材质群组:在大纲(outliner)中选择。
 提示:第一个材质群组需要匹配到模型上的默认材质,其他则要匹配到模型的材质数。
提示:第一个材质群组需要匹配到模型上的默认材质,其他则要匹配到模型的材质数。数据结构(Data Structures)
VMDL中LOD群组数据如下:
CVNodeMaterialGroupListReference m_pMaterialGroupList = CVNodeMaterialGroupListReference
{
	NodeMaterialGroupList_t* m_pObject = &NodeMaterialGroupList_t_0
	string m_sFileName = ""
}
m_pMaterialGroupList
VMDL中CVNodeMaterialGroupListReference的参考:
| Attribute | Friendly Name | Description | Type | Default Value | 
|---|---|---|---|---|
| 属性 | 易记名称 | 描述 | 类型 | 默认值 | 
| m_pObject | 指向 NodeMaterialGroupList_t | NodeMaterialGroupList_t* | ||
| m_sFileName | 包含外部材质群组列表的相对路径 | string | 
NodeMaterialGroupList_t
一个NodeMaterialGroup_t元素列表。在VMDL中如下所示:
NodeMaterialGroupList_t NodeMaterialGroupList_t_0
{
	NodeMaterialGroup_t[] m_materialGroups = 
	[
		NodeMaterialGroup_t
		{
			string m_name = "default"
			string[] m_materialList = 
			[
				"models/sdk_character/materials/base.vmat",
                                "models/sdk_character/materials/hair.vmat"
			]
		},
		NodeMaterialGroup_t
		{
			string m_name = "hair_green"
			string[] m_materialList = 
			[
				"models/sdk_character/materials/base.vmat",
                                "models/sdk_character/materials/hair_green.vmat"
			]
		}
	]
}
NodeMaterialGroup_t
| Attribute | Friendly Name | Description | Type | Default Value | 
|---|---|---|---|---|
| 属性 | 易记名称 | 描述 | 类型 | 默认值 | 
| m_name | Name | 材质群组名称 | string | |
| m_materialList | Materials | 一个与该组关联的材质组路径(相对路径)列表 | string[] | 
 注意:在上面的例子中,切换到材料群组 "hair_green" 依然会保持身体的材质,但头发会切换成绿色的材质。
注意:在上面的例子中,切换到材料群组 "hair_green" 依然会保持身体的材质,但头发会切换成绿色的材质。
























