[過去ログ] 【ゲームエンジン】Unityなんでも質問スレpart11 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
67(2): 名前は開発中のものです。 [] 2023/08/11(金) 19:01:37.44 ID:/Wy+OxKS(4/7) AAS
transformについて質問です
あるオブジェクトをGameobject.Findで見つけて、その子を取得したいと思います
その場合このようなコードになります
canvasを取得して、そのあとテキストgame objectを検索します
GameObject ui_canvas;
Transform text;
void Start()
{
ui_canvas = GameObject.Find("uiCanvas");
text = ui_canvas.transform.Find("text");
print(text);
}
子でもゲームオブジェクトであることに代わりはないと思うのですが、なぜtransform型なのでしょうか
71(1): 名前は開発中のものです。 [sage] 2023/08/11(金) 19:54:31.66 ID:Yt1EJqlB(5/12) AAS
>>67
Text取得すんならワザワザtransform型にしなくても、Text型にしとけゃよくね?
何故そんなコードにしたん?
89(2): 名前は開発中のものです。 [sage] 2023/08/12(土) 12:03:12.27 ID:+4x1ZtpL(1/2) AAS
>>84
まず前提としてtransform.findでGameObject型は取れないよ
transform.findは子のゲームオブジェクトじゃなくて子のTransformを取得する
>>67の
GameObject ui_canvas;
Transform text;
void Start()
{
ui_canvas = GameObject.Find("uiCanvas");
text = ui_canvas.transform.Find("text");
print(text);
}
をよく読めば分かるけどフィールドのtextはTransform型で用意されてる
このコードはtextゲームオブジェクトは取得していない
じゃあなんで皆Transform型を探すかというと、TransformにはgameObjectプロパティがあって、このプロパティを使う(Transform.gameObject)とTransformがアタッチされたゲームオブジェクトが取得できるから
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.033s