Unity事例ノート

UNITY

Prefabからヒエラルキーのオブジェクトを取得

生成されたPrefabの側から、ヒエラルキー内のオブジェクトを取得できる仕組みを作ってみましょう。

オブジェクトだけでなく、変数も取得できるようにスクリプトを作成します。

今回の例では、1秒おきに発射される球(Prefab)のパワー数値を、ヒエラルキーにあるオブジェクトから取得してみます。

Prefabから他の変数を取得

空のオブジェクト(アクセスされる側)を作成します。

この位置から、1秒おきに球を発射させるようにします。

BallShot.csを作成し、GameObject(空のオブジェクト)に追加します。

BallShot.csを記述します。

続いて、Sphere(アクセスする側)を作成し、リジッドボディを追加します。

Ball.csを作成し、Sphereに追加します。

Ball.csを記述します。

Sphereをプレハブ化します。

Sphereの元データは削除しておきます。

プレハブのフィールドに、Sphereを入れます。

ゲームプレイしてみましょう。

1秒おきにPrefabデータ(Sphere)が発射されます。

発射されたSphereを見てみると、ヒエラルキー内のGameObjectを取得できていることが確認できます。

さらに、BallShotクラス内にあるpower(変数)を取得して、ボールに加える力をランダムにしています。

この記事の監修・専門指導

枚方市のプログラミング専門スクール
フタバゼミ 枚方くずは校

この記事で解説したUnityやC#の技術も、当校では直接個別指導しています。「むずかしいことをおもしろく」をモットーに、初心者から本格開発までサポート。樟葉駅から徒歩1分、まずはお気軽に体験会へお越しください。

SCHOOL教室案内