Unity プレハブ生成方法を完全理解【オリジナルゲームで解説】

当ページのリンクには広告が含まれています。
  • オブジェクトの編集・複製をしたい
  • たくさんオブジェクトを生成したい
  • ゲーム初期画面にキャラクターを出したくない

こんな悩みを解決するには?

たくちん

プレハブが使えます。

プレハブとは簡単に言うと【複製】です。

コピペと置換といってもいいかもしれません。

なくてもできるけど、あるととっても便利な機能です。

この記事ではオリジナルゲームを動画たっぷりで解説します。

見ながら手を動かせばプレハブが実用的に使えるようになります。

ゲーム開発でできることが増えると嬉しいですよね。

たくちん

ゲーム完成へのゴールを目指して頑張っていきましょう。

せっかく始めたゲーム開発・・・。

挫折してしまうのはもったいない!

たくちん

朝起きたら、ゲーム開発に関する知識詰め込まれてないかな・・・なんて。

アンケートで分かった「稼ぐこと」ができた学習方法をまとめました。

\ゲーム開発ができる「引き出し」が無限に!/

たくちん

ゲーム開発ができる世界へワープしませんか?

目次

プレハブとは?

Unity プレハブ

プレハブとは簡単にいうと【複製】です。

ただのコピーと思うことなかれ。

オブジェクトをプレハブ化すると、同じオブジェクトが複製されます。

複製されたオブジェクトを「インスタンス」と呼び、親子関係を持ちます。

親:プレハブ化したオブジェクト
子:プレハブをもとに複製されたオブジェクト(インスタンス)

たくちん

プレハブ化したオブジェクト(親)に変更を加えると
プレハブをもとに複製されたオブジェクト(子)も同時に変更されます。

訳が分からない・・・という方のために実例を交えて解説します。

まずはすごく便利ということが伝われば良いです。

プレハブの作成方法と使い方

Unity プレハブ

具体的にプレハブの作成方法と使い方を書いていきます。

スクリプトは必要ありません。

プレハブ作成方法

プレハブの作成方法は簡単です。

ヒエラルキーからプロジェクトにドラッグするだけ。

たくちん

対象のオブジェクトが青色になったらプレハブ化成功です。(パチパチ)

プレハブの使い方

使い方はこちら。

プロジェクトからシーン画面へドラッグする。

どちらも簡単ですね。

たくちん

同じオブジェクトが簡単にたくさん作れます

キャラクターなどを何回も作成するのは大変ですよね。

まとめて変更をかけることができたすごいと思いませんか?

プレハブの変更

プレハブ設定を実施するとオブジェクトの変更がまとめてできるようになります。

プレハブとインスタンスをまとめて変更する

一つオブジェクトの大きさを変更しただけで子(インスタンス)も全て切り替わります。

手順はこちら。

STEP
プレハブ(青いオブジェクト)をダブルクリックかオブジェクト横>をクリック

白黒になって焦るけど大丈夫です。

STEP
プレハブモードに切り替わる

選んだオブジェクトだけ強調せれていることを確認。

STEP
変更実施

シーンをクリックすると全体が変更される。

たくちん

エクセルの置換っぽいなと思いました。
ボタンなどまとめて変更したい時に時短になりますね。

プレハブ内のインスタンスだけを変更する

「プレハブ全体じゃなくてひとつだけ変更かけたい」

そんな時はインスタンスだけ変更することもできます。

プレハブモードに切り替えず、そのまま変更する。

たくちん

シンプルですね。
変更箇所は青色のマークが付きます。

プレハブの解除

プレハブを解除する手順はこちら。

STEP
プレハブ化されたオブジェクトを右クリック
STEP
「プレハブ」にカーソル
STEP
展開(Unpack)でプレハブ解除
たくちん

一度解除すると元のプレハブには戻せません

プレハブをスクリプトから呼び出す

Unity スクリプト

プレハブを使ってスクリプトから呼び出すことができます。

手順はこちら。

STEP
プレハブの削除
STEP
空のオブジェクト作成
STEP
スクリプトを作成
STEP
スクリプト・プレハブをアタッチ

プレハブの削除

スクリプトから呼び出す場合はゲーム画面にあるプレハブは不要です。

たくちん

スクリプトで呼び出したかわかりやすくするために
削除しましょう。

空のオブジェクト作成

スクリプトとプレハブを入れる(アタッチ)ために作成します。

ヒエラルキーを右クリックして「空のオブジェクトを作成」できます。

たくちん

混乱しないよう分かりやすい名前をつけましょう。

スクリプト作成

public class catManeger : MonoBehaviour
{
    public GameObject cat;
    // Start is called before the first frame update
    void Start()
    {
        StartCoroutine(catplayer());
    }
    IEnumerator catplayer()
    {
        yield return new WaitUntil(() => Input.GetMouseButtonDown(0));
        while (true)
        {
            Instantiate(cat);
            yield return new WaitForSeconds(1.5f);
        }
    }
}
たくちん

Instantiate(cat);
この部分でプレハブを生成する指示をしています。

今回は秒数を開けてプレハブ生成するスクリプトを書きました。

スクリプト・プレハブをアタッチ

作成したスクリプトとプレハブをゲームオブジェクトへアタッチします。

  • public GameObject cat;

public(パブリック)とスクリプトに書くことでゲームオブジェクトをアタッチできます。

今回はプレハブですが・・・同様です。

こちらが完成したゲーム画面です。

たくちん

ゲーム初期画面にキャラクターを出さないこと
できるようになりました。

\ゲーム開発ができる「引き出し」が無限に!/

たくちん

ゲーム開発ができる世界へワープしませんか?

【まとめ】プレハブで悩むのは終わりにしませんか?

プレハブについて生成手順や動画にて解説しました。

便利な機能なのでしっかり使いこなしていきましょう。

分からないところがあれば記事を振り返ってみてください。

ゲーム開発の知識が深まるほどできることが増えます

今はチグハグでもパズルのピースが組み上がるように「使えるとき」がきます。

たくちん

コツコツ勉強していきましょう。

あっ、プレハブと相性の良いランダム生成の記事もおいておきますね。

もっと自由に、思った通りにゲーム開発したい方はぜひ読んでみてください。

たくちん

ではまた別の記事でお待ちしています〜
最後まで読んでいただきありがとうございます。

ゲームの作り方総集編!

11ステップであなたもゲームが作れる。喜んでもらえる。

未経験からでも、分かる!が積み上がりゲームを完成できる。

詳細はこちらから。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

ゲーム開発をしている人が挫折せず「楽しく続けられること」

知識ゼロからUnityを使ってゲームを完成させることができました。
ゲームの作り方を無料で公開!
ご不明点はお問い合わせまで♪

コメント

コメントする

CAPTCHA


目次