The material of this object.
Modifying material
will change the material for this object only.
function Awake () { // Set main color to red renderer.material.color = Color.red; } function OnDestroy () { DestroyImmediate(renderer.material); }
using UnityEngine; using System.Collections; public class ExampleClass : MonoBehaviour { void Awake() { renderer.material.color = Color.red; } void OnDestroy() { DestroyImmediate(renderer.material); } }
import UnityEngine import System.Collections public class ExampleClass(MonoBehaviour): def Awake() as void: renderer.material.color = Color.red def OnDestroy() as void: DestroyImmediate(renderer.material)
Another example:
// Change renderer's material each changeInterval/
// seconds from the material array defined in the inspector. var materials : Material[];
var changeInterval = 0.33; function Update () {
if (materials.Length == 0) // do nothing if no materials
return; // we want this material index now
var index : int = Time.time / changeInterval;
// take a modulo with materials count so that animation repeats
index = index % materials.Length;
// assign it to the renderer
renderer.sharedMaterial = materials[index];
}
using UnityEngine; using System.Collections; public class ExampleClass : MonoBehaviour { public Material[] materials; public float changeInterval = 0.33F; void Update() { if (materials.Length == 0) return; int index = Time.time / changeInterval; index = index % materials.Length; renderer.sharedMaterial = materials[index]; } }
import UnityEngine import System.Collections public class ExampleClass(MonoBehaviour): public materials as (Material) public changeInterval as float = 0.33F def Update() as void: if materials.Length == 0: return index as int = (Time.time / changeInterval) index = (index % materials.Length) renderer.sharedMaterial = materials[index]