Unityの親子。★transform.parent とgameObject
gameObject.transform.parent.gameObject.transform.gameObject.transform.gameObject・・・・。
永遠に繰り返せるという話。
transform ←gameObject & transform →gameObject
まず、
transform ←gameObject
gameObject から、transform にアクセスするには
gameObject.transform
transform →gameObject
transform から、gameObjectにアクセスするには
transform.gameObject
親子のgameObjectがほしい時
子(ぜんぶ)
for(int i=0; i<transform.childCount; i++){ Transform childObject = transform.GetChild (i); } //childCount:子要素の数
親
GameObject parentObject = gameObject.transform.parent.gameObject;
transform とgameObject
あれ。あれ。子がTransform で、親がGameObjectになってた。 上に書いたやつ。
逆のは
gameObject.transformとかでアクセスしていけば、
子のGameObject
取得したいのがgameObjectだったら、
for(int i=0; i<transform.childCount; i++){ GameObject childObject = transform.GetChild (i).gameObject; }
親のTransform
Transform parentObject = gameObject.transform.parent.gameObject.transform;
・・・・.parent.gameObject.transform?
Transform parentObject = gameObject.transform.parent.gameObject.transform;
じゃなくて、
Transform parentObject = gameObject.transform.parent;
で、これでもう。Transform だった。
以上。永遠に繰り返す、という話。でしたgameObject.transform.gameObject.transform.gameObject.transform.gameObject・・・・。
なんか普通に。よけいに書いちゃったりするー。
ちなみに
//作成したgameObject のtransform.parentに //親にするオブジェクトの transformをセットすると、 //Instantiateしてからの親子階層がつくれるんだって。 GameObject gObj = (GameObject)Instantiate(プレハブ); gObj.transform.parent = 親.transform;
いつか使いそう。φ(・・。)♪