公開日:2023/05/25  更新日:2023/05/25

Unityのプレハブ化とは? やり方・インスタンス化について

 Unityのプレハブ化とはアセットを再利用できるようにすることだ(作業はプロジェクトビューで行う)。
 プロジェクトビューやアセットの用語や使い方がわからない人は以下の記事へ。
プロジェクトビューについて
 同じアセットを様々な場所で複数使うことができるので、非常に有用な機能と言える。
 この記事ではプレハブ化のやり方やインスタンス化について詳しく紹介していく。

Unityのプレハブ化目次

プレハブ化のやり方
インスタンス化
目次にもどる

プレハブ化のやり方

 プレハブ化のやり方は簡単だ。
 ヒエラルキー欄からゲームオブジェクトを選択し、プロジェクトビューへドラッグ&ドロップすれば、プレハブ化の完了である。
 具体的には整理のためのフォルダ「Prefab」をプロジェクトビュー内のAssets内に作成することをおすすめする。
 作成後、ヒエラルキー欄からゲームオブジェクトを試しに一つドラッグ&ドロップして「Prefab」内に持ってこよう。
Unityのプレハブ化
 ドラッグ&ドロップが完了したらヒエラルキー欄を見てほしい。ゲームオブジェクトに青いマークがついているはずだ。プレハブ化した証である。
目次にもどる

インスタンス化

 先ほどのプレハブ化で作成したプロジェクトビュー内のゲームオブジェクトは設計図と考えるとわかりやすい。
 この設計図をヒエラルキー欄にドラッグ&ドロップするのをインスタンス化と言う。設計図と同じゲームオブジェクトが追加される。
Unityのインスタンス化
 シーンビューには変化はないが、それは設計図の元になったゲームオブジェクトと今追加したゲームオブジェクトが同じものであるため位置も同じであり、重なっているからだ。
 どちらかのゲームオブジェクトを移動させて、シーンビューに2つとも見えるようにしよう。
Unityのシーンビューの2つのゲームオブジェクト
 その上でプロジェクトビュー内の設計図のインスペクター(Inspector)を変更していく。今回は設計図を選択した上で、インスペクターのTransformのScale(大きさ)のうちYを増やしてみた。
Unityのシーンビューの2つのゲームオブジェクトの高さが細長くなる
 シーンビューの2つのゲームオブジェクトが2つとも高さが増し細長い形状になったのがわかる。

 このように同じ設計図に属するゲームオブジェクトは設計図のインスペクター欄を変更することで一括変更が可能となる。
 例えばゲーム制作であれば同じ敵を複数出現させることもあるだろう。その際も敵のゲームオブジェクトの設計図を作る(プレハブ化)→設計図からヒエラルキー欄にドラッグ&ドロップして敵を複製(インスタンス化)をしておくと便利だ。大きさや移動パターンなど敵に変更が必要になった時でも設計図を変更すれば1回の変更で全ての敵の変更が完了するのでとても効率的だ。
 敵に限らずスイッチや扉など、複数同じ物を作る時にはぜひプレハブ化・インスタンス化を使っていこう。

Unityの基礎まとめへ戻る

page top