x | 最初のオブジェクト |
y | 比較対象のオブジェクト |
2つのオブジェクト参照が同じオブジェクトを参照しているか比較します。
var target : Collider; function OnTriggerEnter (trigger : Collider) { if (trigger == target) print("We hit the target trigger"); }
using UnityEngine; using System.Collections;
public class ExampleClass : MonoBehaviour { public Collider target; void OnTriggerEnter(Collider trigger) { if (trigger == target) print("We hit the target trigger"); } }
ターゲットがない場合、ループを抜けます。
var target : Transform; function Update () { // Early out if the target is gone if (target == null) return; }
using UnityEngine; using System.Collections;
public class ExampleClass : MonoBehaviour { public Transform target; void Update() { if (target == null) return; } }
null
と比較する場合は注意してください。
例
GameObject go = new GameObject(); Debug.Log (go == null); // false
Object obj = new Object(); Debug.Log (obj == null); // true
GameObject をインスタンス化することでシーンに追加され、完全に初期化されます(!destroyed )。シンプルな UnityEngine.Object をインスタンス化する場合にはこのようなセマンティクスはなく、destroyed のステートのままとなり、true
to null
が比較されます。