Unity

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

投稿日:2019年6月29日 更新日:

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のリファレンスガイドを確認してみてください。

https://docs.unity3d.com/ja/current/ScriptReference/Object.Instantiate.html

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

 

 

 

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

 

Unityの教科書 Unity2019完全対応版  2D&3Dスマートフォンゲーム入門講座 (Entertainment&IDEA)

Unityの教科書 Unity2019完全対応版 2D&3Dスマートフォンゲーム入門講座 (Entertainment&IDEA)

北村 愛実
2,860円(11/21 10:56時点)
発売日: 2019/06/28
Amazonの情報を掲載しています
Unity ゲームエフェクト マスターガイド

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

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

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

竹内 大五郎, 石黒 赳彦, 高橋 誠史, 香川 寛和, 河本 健太郎
発売日: 2014/08/20
Amazonの情報を掲載しています
スポンサーリンク

当サイト(your-3d.com)の管理人のゆあーさんと申します。

このサイトでは、私がZBrushやunityなどで調べたことをわかりやすく共有出来たらいいなと思い開設しました。

読んでくださった皆様のお役に立てたら幸いです。

 

Twitter:

@yoursun3d

 

Booth(3Dモデル販売してます!):

https://your-3d.booth.pm/

 

Amazonほしいものリスト:

https://www.amazon.jp/hz/wishlist/ls/YIXXWB7FVXHG?ref_=wl_share