結局、Prefabってなんなのよ、という人のための解説ハマケン100%開発アプリ開発。4、ライブラリ、ツール類について。結局、Prefabってなんなのよ、という人のための解説TweetPrefabの基礎PrefabとはAssetのひとつで、エディター上で作ったGameObjectをあとから再利用するために使います。Viewに表示されます。Prefabをシーン階層(Hierarchy)にコピーすることを、一般にインスタンス化すると言います。シーン階層にコピーすると、プレイ中に表示させることができるようになります。Prefabからは、何個でもインスタンス化することができます。一つの遺伝子から、複数のクローンを作るようなものです。エディター上でPrefab(遺伝子)を編集すると、インスタンス化(クローン)したもの全てに同様の結果が反映されます。混乱する要因Unityを始めたばかりの頃は、Prefabを使えはするけども、なんだか分かったような分からないような、そんな状態の人も多いと思います。原因の一つとして、スクリプトからPrefabを扱う時に、Prefab型というものが無く、エディター上で作ったPrefabを、GameObject型に代入したり、Transform型に代入したり、Rigidbody型に代入したり、その他様々なコンポーネント型に代入しているサンプルプロジェクトを見かける事にあるような気がします。Prefabをスクリプトから使う例として、TransformコンポーネントとRigidbodyコンポーネントを持ったPrefabは、以下のobj1〜obj3にインスペクターから代入でき、Instantiate()関数で同じようにインスタンス化できます。Ok}Instantiate()関数は、引数に渡したオブジェクトを含有するオブジェクト全体をインスタンス化(クローニング)する関数です。様々な型に代入する理由は?Unityのリファレンスに、Prefabについて以下のように記述があるように、PrefabはGameObject(付随するコンポーネントも含む)に変わりありません。GameObjectではいけないのでしょうか?例えばRigidbody型を指定する場合、この変数にはRigidbodyコンポーネントを持たないPrefabは代入できないようになります。いう時は、Rigidbodyを持たないPrefabが、その変数に代入されるとまずいと考える事ができます。必要条件としてRigidbody型を指定しているわけです。することによって、余計なバグを回避することができます。HamkenDevelopMac,iPhoneのネイティブアプリ開発。Flashアプリの開発をやっています。このブログを検索マイアプリPOLYZANTHショート・ショート・ゲームの迷宮リラックス。ゲームをクリアすれば、先へ進むことができます。じきに慣れるでしょう。Rebirth程よいランダム感で繰り返し遊べます。iOS版:https://goo.gl/pLxhgEAndroid版:https://goo.gl/IjxKhB右脳でございます記憶力の鍛錬をしながら「右脳くん」キャラクターを収集。新トレーニングも追加しました。iOS版:https://goo.gl/AOEtYzAndroid版:https://goo.gl/MAocZU不安なさかな不安症な魚がよみあげる短歌を楽しむアプリです。してらんない動きまわる文字から、単語を読み取るゲームです。金魚すくいゲームをリリースしました。将来Actionエディターになるかもしれない。(13)人気の投稿iPhoneのメッセージの吹き出しが突然青から緑になったらiPhoneのメッセージが便利すぎて、最近、iPhone同士の相手とはメールをほとんど使わなくなりました。GameObjectの非表示2つの方法と削除GameObjectをスクリプトから、一時的に非表示にする方法を試してみました。Unityでは、以下の2つの方法が一般的なようです。Unityアセット9選Unityを使っていると、次々とすばらしいアセットがリリースされて、その情報を追いかけるだけでも大変です。いったような事にならないようにしたいですね。