Unity实现动态修改模型材质球

一、定义需要替换的材质球(且加载该材质球)

 private Material _HighLightMat;                                         //实现闪烁高亮效果材质球
_HighLightMat = Resources.Load("Prefabs/HighlightMat/gradient_HightBlue") as Material;

二、编写修改材质球的方法

 /// 
        /// 改变设备部件的材质球
        /// 
        /// 设备部件的名称
        private void ChangeSelectedEquipmentPartMat(string equipmentPartName)
        {
            if (!string.IsNullOrEmpty(equipmentPartName))
            {
                GameObject go = GameObject.Find(equipmentPartName);
                Material mat = go.GetComponent().material;
                _EquipmentPartsOriginalMatDic.Add(equipmentPartName,mat);
                
                go.GetComponent().material = _HighLightMat;
            }
        }

三、调用改变设备部件的材质球方法,且指定对应的模型名称即可 

注意:这里加载的材质球位置如下:

 

 

你可能感兴趣的:(Unity基础)