Version: 5.3 (switch to 5.4b)
言語English
  • C#
  • JS

スクリプト言語

好きな言語を選択してください。選択した言語でスクリプトコードが表示されます。

Renderer.material

フィードバック

ありがとうございます

この度はドキュメントの品質向上のためにご意見・ご要望をお寄せいただき、誠にありがとうございます。頂いた内容をドキュメントチームで確認し、必要に応じて修正を致します。

閉じる

送信に失敗しました

なんらかのエラーが発生したため送信が出来ませんでした。しばらく経ってから<a>もう一度送信</a>してください。ドキュメントの品質向上のために時間を割いて頂き誠にありがとうございます。

閉じる

キャンセル

マニュアルに切り替える
public var material: Material;
public Material material;

説明

レンダラーに割り当てられている最初にインスタンス化された Material を返します。

Material を変更するとこのオブジェクトだけのためにマテリアルが変更されます。

他のレンダラーでマテリアルが使用される場合、 これは共有のマテリアルを複製し、それを使用して起動します。

Note:
この関数はマテリアルを自動的にインスタンス化し、このレンダラーに固有なものを作ります。 ゲームのオブジェクトが破壊されるとき、マテリアルを破壊することはあなたの責任です。 Resources.UnloadUnusedAssets も マテリアルを破壊しますが、それは通常、新しいレベルを読み込むときにのみ呼び出されます。


        
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]; } }