【Unity】オブジェクトを生成する方法を解説!【スクリプトから生成できる】

Unity
この記事は約4分で読めます。

Unityでスクリプトからオブジェクトを生成する方法について解説します。

簡単にいってしまうと、オブジェクトを生成する際はInstantiate()を使います。

スクリプトから簡単にオブジェクトを生成できるので、ぜひ覚えておきましょう!

 

スポンサーリンク

■Instantiateの使い方

Instamtiate()の使い方をさっそく解説していきます。

説明を簡潔にするため、以下のものをあらかじめ用意しておいてください。( )は説明する際に利用するnameです。

Unity超初心者の方は、( )内のnameと同じようにそれぞれ作成していただければ、記事を読みつつInstamtiate()について学べます

 

・生成元のゲームオブジェクト:(Cube、Script内ではobj)

・オブジェクト生成コードを記述するc#スクリプト(InstantiateScript)

・スクリプトをアタッチするゲームオブジェクト(GameManager)

 

 

InstamtiateScriptへ変数定義をします。

 

・オブジェクトを生成する

もっともシンプルにオブジェクトを生成するコードです。

 

1:InstamtiateScriptをGameManagerへアタッチ

2:public変数のobjにCubeを入れる

 

実行するとオブジェクトが生成されます。生成される位置、姿勢は生成元のオブジェクトとまったく同じになります。

 

 

・生成するオブジェクトの位置、姿勢を指定する

生成したいオブジェクトの位置、姿勢を指定できます。こちらを覚えればInstamtiate()は難なく使いこなせるようになります。

 

 

・生成したいオブジェクトの親子関係を指定

説明のため変数名を変えます。

 

 

childObjectに生成したいオブジェクトを、parentに親にしたいオブジェクトをアタッチします。

GameObjectを生成するときに、自動で親子関係を持たせてくれます。

 

 

スポンサーリンク

■Instantiateを使った具体例の紹介

Instamtiate()を使った具体的な利用例を紹介します。

 

・For文で大量に生成

 

for文内に記述することで、複数のオブジェクトをまとめて生成できます。

 

・ボタンクリックで生成、移動

 

左ボタンをクリックすることで、生成したオブジェクトを移動させます。

発射口を指定すれば、FPSなどシューティングゲームに使えるコードです。

 

Unityのオブジェクト生成についてさらに詳しく知りたい方は、Unityのリファレンスガイドを確認してみてください。

Object-Instantiate - Unity スクリプトリファレンス
original のオブジェクトをクローンします

なお、具体例として紹介したコードも、こちらのリファレンスで公開されていたものを利用しています。

今回はここまでです。最後まで読んでいただきありがとうございました。

 

Unity ゲームエフェクト マスターガイド

Unity ゲームエフェクト マスターガイド

秋山 高廣
4,620円(11/20 20:39時点)
Amazonの情報を掲載しています
Unityゲーム開発 オンライン3Dアクションゲームの作り方

Unityゲーム開発 オンライン3Dアクションゲームの作り方

竹内 大五郎, 石黒 赳彦, 高橋 誠史, 香川 寛和, 河本 健太郎
2,772円(11/20 18:12時点)
発売日: 2014/08/20
Amazonの情報を掲載しています
タイトルとURLをコピーしました