x | 最初のオブジェクト |
y | 最初のオブジェクトを比較する対象のオブジェクト |
二つのオブジェクトが同じオブジェクトを参照しているか比較します
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"); } }
import UnityEngine import System.Collections public class ExampleClass(MonoBehaviour): public target as Collider def OnTriggerEnter(trigger as Collider) as void: 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; } }
import UnityEngine import System.Collections public class ExampleClass(MonoBehaviour): public target as Transform def Update() as void: 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
が比較されます。