![見出し画像](https://assets.st-note.com/production/uploads/images/73968873/rectangle_large_type_2_e44363ce3e6efa30d1c9d72cb49c118f.png?width=1200)
【Unity】キャラクターのパーツを交換する
「装備したら見た目が変わってオリジナルキャラが作れる!」みたいな機能を作りたいので頑張ってみます。
まず、パーツ分けされた画像を用意し、SpriteEditorで開きます。今回は以下の6つに分けました。それぞれのパーツに名前を付けておくと管理しやすいかと思います。
左上のSpriteEditorをクリック。
そうすると色々出てくるかと思います。
その中の三番目のCreate Boneをクリック。ダブルクリックでパーツを選び、左クリックでこのようにボーンを付けることができます。
すべてのパーツにボーンが付け終わったらCreate Boneの二つ上にあるPreview Poseをクリック。今付けたボーンに名前を付けます。
今回はこのゴブリンの他に狼男とオークとミノタウロスを用意して同じようにボーンを付けました。
UnityのEditorに戻り、空のゲームオブジェクト(今回はCharacterと名付けた)を作り、その中にパーツ分けした画像を入れてください。
パーツをすべて選択してSprite Skinというコンポーネントを追加してください。
そしてその中のCreate Bonesをクリック。
ボーンが作られました。
次は親要素のCharacterを選択して、IK Manager 2Dというコンポーネントを追加。
その中にIK Solversというものがあり、+をクリックすると三つ項目が出てくると思うので、その中のLimbをクリック。
そうするとNew LimbSolver2Dというオブジェクトが新たに生成されます。任意の名前(画像はR_Hand IKとした)に変更してください。今回は右手、左手、右足、左足の四つ分作ります。R_Hand IKは右手専用なので右手の一番先端のボーンの場所に持っていき、Limb Solver 2Dの中のEffecterに右手の一番先端のボーンをドラッグしてください。
そしてCreate Targetをクリックして右手は終了です。これをあと三回(左手、右足、左足)繰り返してください。
次にSprite Library Assetを追加します。僕の使っているUnity 1.1.0f1ではプロジェクトビューの+>2D>Sprite Library Assetで追加できました。
Body Partsという名前にしました。今回は六つのパーツに分かれているので六回+を押し、それぞれのカテゴリーの名前を付ける(Head、Body、RightArmなど)。Category Listには登録するキャラクター分の数を入力(今回はゴブリン、狼男、オーク、ミノタウロスなので4)。Labelには名前を、スプライトにはそれぞれのパーツのスプライトを入れる。
次にヒエラルキービューのパーツをすべて選択してSprite Libraryというコンポーネントを追加する。その中のSprite Library Assetに先ほど作ったSprite Library Asset(Body Parts)を入れる。
そしてそのままSprite Resolverというコンポーネントを追加する。
パーツを個別に見ていくとカテゴリーとラベルが変更できるようになっているのでパーツごとに変更することが可能になりました。
あとはアニメーションなどを付ければそれっぽく見えるのではないでしょうか。
参考にした動画↓
いいなと思ったら応援しよう!
![M.Y](https://assets.st-note.com/production/uploads/images/22404253/profile_f21e0a6bef198fb69e0c55919be01fa1.jpg?width=600&crop=1:1,smart)