AssetPostprocessor.OnAssignMaterialModel 在模型指定的材质

function OnAssignMaterialModel (material : Material, renderer : Renderer) : Material

Description描述

Feeds a source material

获取一个源材质。

The returned material will be assigned to the renderer. If you return null, Unity will use its default material finding / generation method to assign a material. The sourceMaterial is generated directly from the model before importing and will be destroyed immediately after OnAssignMaterial.

返回的材质将被赋于渲染器,如果返回null,Unity将使用缺省材质查找/生成方法来分配材质。sourceMaterial在模型导入并在销毁前,OnAssignMaterial之后直接从模型生成。

class MyMeshPostprocessor extends AssetPostprocessor {

	function OnAssignMaterialModel (material : Material , renderer : Renderer ) : Material 
	{
		var materialPath = "Assets/" + material.name + ".mat";

		// Find if there is a material at the material path
		// Turn this off to always regeneration materials
		// 根据路径查找是否有材质,关闭后自动生成材质
		if ( AssetDatabase.LoadAssetAtPath (materialPath, typeof( Material )))
			return AssetDatabase.LoadAssetAtPath (materialPath, typeof( Material ));

		// Create a new material asset using the specular shader
		// but otherwise the default values from the model
		// 用特定着色器创建新材质资源,否则使用默认值
		material.shader = Shader.Find ("Specular");
		AssetDatabase.CreateAsset (material, "Assets/" + material.name + ".mat");
		return material;
	}
}
最后修改:2011年1月9日 Sunday 0:00

本脚本参考基于Unity 3.4.1f5

英文部分版权属©Unity公司所有,中文部分© Unity圣典 版权所有,未经许可,严禁转载 。