多种材质切换:获取物体的MeshRenderer组件上所有的材质球,并将其存放到数组中;创建另一个数组存放需要新材质球,通过循环遍历将将需要替换的材质球存放在创建好的数组内。 比如说同时给象棋的棋盘和棋子切换不同材质,具体步骤如下: 1.分别导入棋盘、棋子模型;黑方归一类,红方归一类,如图所示:
2.观察模型的材质,比如说,黑棋的第一个元素对应的是black材质球,第二个元素对应的是qizi材质球;红棋的第一个元素对应的是qizi材质球,第二个元素对应的是red材质球;棋盘的第一个元素对应的是棋盘线的black材质球,第二个元素对应的是qipan材质球。
3.创建ChangMat.cs脚本,具体代码如下: 我使用按钮点击进行切换,所以大家一定不要忘记添加using UnityEngine.UI;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class ChangeMat : MonoBehaviour
{
public GameObject obj; // 获取物体
MeshRenderer meshRender; //获取组件
public Butto