‫unityの非常に基本的な機能として､ コンポーネントの機能があります｡
‫そして､ 部品は超強力なツールです｡
‫オブジェクトに機能､ 外観､ 物理を追加することができるのです｡
‫例えば､ プレーヤーに変形した部品があるとします｡
‫球体成分､ 球体メジャー､ 剛体などを持っている｡
‫そして､ これらの部品は､ 私たちのプレーヤーに機能性と外観を付加してくれます｡
‫なぜなら､ 例えば異なる種類の動作を追加したい場合､ その都度､ 理解しなければならない非常に重要な点です｡
‫例えば､ プレイヤーの移動があるとして､ プレイヤーがシュートを打てるようにしたいとします｡
‫次に､ 新しいコンポーネントを作成します｡ これはスクリプトコンポーネントで､ 新しいスクリプトを作成します｡ あるいは､
‫ここに新しいスクリプトを作成して､ ここに新しいスクリプトを作成します｡
‫そして､ オブジェクトに異なるコンポーネントを追加させることができます｡
‫例えば､ エフェクトをつけるとか｡
‫では､ どのような粒子系を対象にしているのでしょうか？
‫今までは剛体だけでしたから､ 球体衝突装置やそういったものを追加することもできます｡
‫さらに､ 球体に追加のコライダーを追加して､ ボックスコライダーを追加することもできます｡
‫このように､ プレイヤーにはBoxとSphereという2種類のコライダがあります｡
‫コライダー そして､ それは新しいコンポーネントです｡
‫必要なときに必要なコンポーネントを追加でき､ そのコンポーネントはいつでも取り外すことができます｡
‫また､ コンポーネントをコピーして､ 別のオブジェクトに追加することもできます｡
‫例えば､ このプレイヤーの動きを表すコンポーネントを別のオブジェクトに置きたい場合､ ここにあるコンポーネントという部品をコピーして､
‫例えばゲームオブジェクトに追加することができるわけです｡
‫そこで､ ここで､ そこを押して､ コンポーネントを新規に貼り付けるのです｡
‫この小さなボタンを押し､ コンポーネントを新規に貼り付けると､ プレーヤーコンポーネントがここにできます｡
‫まあ､ そのゲームオブジェクトでは意味がないので､ またコンポーネントを削除します｡
‫そうすれば､ 例えば部品の順番を変えたいとき､ 単純に上にずらせばいいのです｡
‫つまり､ このプレーヤー移動のコンポーネントを上に移動させたい場合､ ボタンを押して上に移動させることができるのです｡
‫そしてご覧のように､ このアクションはそこにあるプレハブインスタンスを壊すことができます｡
‫本当に続けるのですか？私はキャンセルで済ませます｡
‫では､ 同じことをプレハブでやってみましょう｡
‫プレーヤーに移動して､ 今すぐ上に移動してみましょう｡
‫だから､ 今見ていただいたように､ それを変えるのはあまりうれしくないんです｡
‫つまり､ 何かを上に移動させたい場合､ 例えばコンポーネントを上に移動させたい場合､ 階層内のそのインスタンスではなく､
‫プレハブでそれを行います｡ なぜなら､ ここにいるプレーヤーは､ あそこにいるプレーヤーとは違うからです｡
‫こちらがプレハブで､ あちらがプレーヤー本体です｡
‫そのため､ 階層内のプレーヤーインスタンスに何か変更を加えると､ それを適用することができます｡
‫例えば､ プレーヤーの動きを制御するコンポーネントが､ 下から2番目､ あるいは3番目の低い位置にあるとします｡
‫そして､ その1枚のスピードは､ 仮に100とします｡
‫つまり､ プレイヤープレファブのスピードは100です｡
‫今はプレーヤー自体がそれを引き継いでいますが､ ここで変更することで､ プレーヤーのスピードを20に変更することができました｡
‫しかし､ 私たちのプレハブは､ その影響を受けません｡
‫では､ これを応用する場合はどうかというと､ それは見ての通りです｡
‫つまり､ ここで変更した情報をプレハブに保存する場合は､ 適用をクリックする必要があるのです｡
‫わかりました｡
‫だから､ それはとても重要なことなのです｡
‫変更を加えて適用したい場合は､ 適用を押してください｡
‫そして､ プレーヤープレファブ自体もスピードが20になるようにしました｡
‫わかりました｡
‫以上､ コンポーネントの話と､ プレハブの話を少しさせていただきました｡