本文共 853 字,大约阅读时间需要 2 分钟。
获取物品Mesh Render下的Materials,进行一层或者多层的替换
通过调用ChangeShader和ChangeShaderTwo来实现材质的更改
using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;public class ShaderChange : MonoBehaviour{ public Material mat; public GameObject go; public Button bt; void Start() { bt.onClick.AddListener(ChangeShaderTwo); } public void ChangeShader() { go.GetComponent().material = mat; } public void ChangeShaderTwo() { //Material[0]使用物体上的着色器Element0,Material[1]使用Standard Material[] materials = GetComponent ().materials; materials[1] = new Material(Shader.Find("Standard")); materials[1].color = new Color(1, 1, 1, 0); GetComponent ().materials = materials; }}
转载地址:http://vloen.baihongyu.com/