Version: 2017.1
public Material material ;

Description

Returns the first instantiated Material assigned to the renderer.

Modifying material will change the material for this object only.

If the material is used by any other renderers, this will clone the shared material and start using it from now on.

Note:
This function automatically instantiates the materials and makes them unique to this renderer. It is your responsibility to destroy the materials when the game object is being destroyed. Resources.UnloadUnusedAssets also destroys the materials but it is usually only called when loading a new level.

using UnityEngine;
using System.Collections;

// Change renderer's material each changeInterval // seconds from the material array defined in the inspector. public class ExampleClass : MonoBehaviour { public Material[] materials; public float changeInterval = 0.33F; public Renderer rend;

void Start() { rend = GetComponent<Renderer>(); rend.enabled = true; }

void Update() { if (materials.Length == 0) return;

// we want this material index now int index = Mathf.FloorToInt(Time.time / changeInterval);

// take a modulo with materials count so that animation repeats index = index % materials.Length;

// assign it to the renderer rend.sharedMaterial = materials[index]; } }
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961