/// <summary> /// 测试加载一个动态的可以设置参数的材质 /// </summary> private void TestDynamicMaterial() { var mesh = Actor.GetComponent <StaticMeshComponent>(); if (mesh == null) { Log.Error("[MaterialTest] mesh is null"); } mesh.SetScalarParameter("ChooseType", 0.0f); var mat = mesh.GetMaterial(2); if (mat == null) { Log.Error("[MaterialTest] get mat is null"); } var m = Resource.LoadMaterial("Resources/UI/选人/Material__72"); if (m == null) { Log.Error("[MaterialTest] load mat is null"); } var dm = DynamicMaterial.Create(m, Actor); if (dm == null) { Log.Error("[MaterialTest] create DynamicMaterial is null"); } var tex = Resource.LoadTexture("Resources/Textures/Ground4"); if (tex == null) { Log.Error("[MaterialTest] LoadTexture is null"); return; } mesh.SetMaterial(2, dm); dm.SetTextureParameter("Texture", tex); }
/// <summary> /// 测试加载一个动态的可以设置参数的材质 /// </summary> private void TestDynamicMaterial() { var mesh = Actor.GetComponent <StaticMeshComponent>(); if (mesh == null) { return; } var mat = mesh.GetMaterial(0); if (mat == null) { return; } var m = Resource.LoadMaterial("/Resources/Materials/NewMaterial"); if (m == null) { return; } var dm = DynamicMaterial.Create(m, Actor); if (dm == null) { return; } var tex = Resource.LoadTexture("/Resources/Textures/Ground4"); if (tex == null) { Log.Debug("tex != null."); return; } mesh.SetMaterial(0, dm); dm.SetTextureParameter("MainTex", tex); }