テラシュールブログ

旧テラシュールウェアブログUnity記事。主にUnityのTipsやAR・VR、ニコニコ動画についてのメモを残します。

コンポーネントの追加と削除

MMORPG風ゲームのチュートリアル動画作成中。
意外と30分以内に収めることができない。
むむむ。


コンポーネントの追加方法について、少しまとめ。

コンポーネントは基本的にInspectorにD&Dで追加すれば良い。

とはいえ、要素が増えたりすると大変だし、
動的に設定したいと思う時もあるかもしれない。

その方法メモ。

D&Dの方法も含めると、方法は大体3通り。
・RequireComponent
・AddComponent
コンポーネントD&D(もしくはメニューから追加)する


■RequireComponent

この方法は、スクリプトコンポーネント付与命令を追加する。

要するに、RequireComponentが書かれているコンポーネントを追加すると、
ついでにRequireComponentで指定しているコンポーネントも追加される。

コンポーネントを使うことが確定しているスクリプトでは、
これで追加しておくとスクリプトエラーが少なくて便利。

スクリーンショット 2012-03-17 7.05.42


■AddComponent

これはコンポーネントを動的に追加する方法。

動的にコンポーネントを追加できるので、
キャラクターに追加効果をつける時や、AIを付与するような時に便利かもしれない。

スクリーンショット 2012-03-17 7.12.09


D&D

いつもの手法。
ProjectのスクリプトをオブジェクトにD&Dする。
エラーがあると失敗する。



スクリプト上でコンポーネントの削除

スクリプトを削除するには、コンポーネントを取得して削除する必要がある。

削除したいコンポーネントが自身ならば
Destroy(this)

外部のオブジェクトにあるならば、
Destroy( GetComponent())。

thisの扱いはgameobjectではなくコンポーネント単位なので、こんなことができる。



コンポーネントの追加と削除については、こんな感じで。

フォローボタン