Blenderでカービィのモデリングをする

# 概要
Blenderを用いてカービィのモデリングを行います。

# 結果
このようになります。
![Kirby_for_Qiita.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/498199/f5cf4a2b-8ce5-3543-fab4-329f04dfa6d2.png)


# 方法
* [胴体を作る](#胴体を作る)
* [腕を作る](#腕を作る)
* [脚を作る](#脚を作る)
* [マテリアルを貼る](#マテリアルを貼る)
* [テクスチャを貼る](#テクスチャを貼る)

という流れで作っていきます。

## 胴体を作る
まず胴体から作っていきます。形状は完全な球なので、デフォルトで置いてある立方体を消してから球を新しく作ります。

球のTransformは

||x|y|z|
|:-:|:-:|:-:|:-:|
|Position|0|0|0|
|Rotation|0|0|0|
|Scale|1|1|1|

にしておきます。カーソルを中央に置いた状態(<b>Shift+S→Cursor to Center</b>)で球をShift+Aで生成すれば最初からPositionがx=0, y=0, z=0になってくれるので便利です。球のSegmentsは32、Ringsは16にしておきます。

## 腕を作る
腕の形状は球を少し引き延ばした楕円体です。新しく球を生成します。この球のTransformは

||x|y|z|
|:-:|:-:|:-:|:-:|
|Position|0.849|0|0.049|
|Rotation|0|31.1|0|
|Scale|0.608|0.289|0.345|
にします。今作った片腕を<b>Shift+D</b>で<b>複製</b>します。そしてScaleはそのままの値にしつつ、Locationのxの値を正負逆に、Rotationのyの値を正負逆にします。すなわち

||x|y|z|
|:-:|:-:|:-:|:-:|
|Position|-0.849|0|0.049|
|Rotation|0|-31.1|0|
|Scale|0.608|0.289|0.345|
とします。ここまで作ると下の図のようになります。
<img width="959" alt="kirby1.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/498199/336ae946-f96e-ef62-56cb-0ecfca04908f.png">

## 脚を作る
まずShift+Aで新しく立方体を作ります。さきほど作ったカービィの胴体と腕と重ならないように、とりあえずこの立方体はz軸の負の方向に適当に動かしておきます。この立方体を選択した状態でプロパティウィンドウ→Modifier→Add Modifier→<b>Subdivision Surface</b>を選択します。そしてViewの値を3にします。ここまで行うと下の図になります。
<img width="958" alt="kirby2.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/498199/f2420679-69ee-3088-b1d8-dfbe65fee9aa.png">

次にEdit Modeに変更し、Face Selectにします。
<img width="716" alt="kirby3.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/498199/deabec81-c84e-308f-431f-a79aac5ce825.png">

Sキー→Zキーで立体をz軸方向に縮小させます。
<img width="304" alt="kirby4.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/498199/526bdda7-6123-6abd-76c9-eae42c72fe74.png">

立体のy軸負の面を選択した状態でSキーを押し、面の大きさを縮小します。
<img width="303" alt="kirby5.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/498199/551f0d54-11ba-e409-adb2-523aa13a037a.png">

立体のz軸負の面を選択した状態で<b>Eキー</b>を押し、そのままEnterキーで決定します。これは面を<b>押し出す</b>操作です。
<img width="328" alt="kirby6.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/498199/1c054143-92da-0412-e739-d25dfd3fec4f.png">

あとはRotationやScaleを適宜微調整して、さきほど作ったカービィの胴体の下に脚を移動させます。脚をShift+Dで複製して、もう片方の脚も作ります。最後に<b>Tキー→Shading→Smooth</b>で表面を滑らかにした結果が下になります。
<img width="407" alt="kirby7.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/498199/bf67a56b-c99d-7098-2da1-1d92845efef6.png">

## マテリアルを貼る
カービィの胴体以外に貼るマテリアルを作ります。まず腕のマテリアルです。

Object Modeで腕を選択した状態で、プロパティウィンドウ→Material→Newで新しくマテリアルを生成します。マテリアルの名前を"Pink"にしてDiffuseの色をピンクにします。
<img width="960" alt="kirby8.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/498199/bd7998ae-82ab-d2f0-15f0-6f04f751c418.png">

ピンクのマテリアルをもう片方の腕にもつけます。同じように、脚には"Red"という名前の赤いマテリアルをつけます。
<img width="959" alt="kirby9.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/498199/7d7c9649-8ee4-06d5-6178-77e85734d8dd.png">

## テクスチャを貼る
最後にカービィの胴体にテクスチャを貼ります。

まず、3Dビューウィンドウの右上にある三角形を左にスライドさせて、<b>Blenderの画面構成を2つに分けます</b>。そして3Dビューヘッダの左下にあるメニューで<b>UV/Image Editor</b>を選択すると、下のようになります。
<img width="946" alt="kirby10.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/498199/1b15ba27-af37-dfc8-3bd2-42d2979b9abf.png">

次に、2つに分けた左側のウィンドウでカービィの目、口、頬の赤らみがあるであろう場所をEdit Modeで大まかに選択します。選択したうえで<b>Uキー→Unwrap</b>を選択すると、選択した部分のメッシュが展開された状態で右側のウィンドウに出現します。
<img width="960" alt="kirby11.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/498199/352ab566-25af-286d-8f5c-fe14f649a05a.png">

では実際にカービィの顔のパーツを描いていきます。本記事ではClip Studio Paintというお絵かきアプリを使いますが、使うお絵かきアプリは何でも構いません。右側のUV/Image Editorで<b>UVs→Export UV Layout</b>を選択し、今展開したメッシュの画像を名前を付けて保存します。その画像をお絵かきアプリで開きます。下の写真は、今保存したメッシュの画像をClip Studio Paintで開いた様子です。
<img width="958" alt="kirby12.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/498199/d04590f3-ce64-9cc5-b28d-c9dd14e79888.png">

<b>メッシュの枠の中に顔のパーツがすべておさまるように描いていきます。最終的にメッシュの画像を非表示にするので、新たに描き加える顔のパーツの絵は、最初のメッシュの画像と異なるレイヤーに描くようにしてください。</b>
<img width="959" alt="kirby13.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/498199/b55d1481-894f-221d-f12e-a22af33fda31.png">

メッシュの画像が載ったレイヤーをOFFにしてから描いた画像を保存します。Blenderに戻って、Object Modeでカービィの胴体を選択した状態でプロパティウィンドウのMaterial→Newで"Body"という名前のマテリアルを新しく作ります。マテリアルの色等は設定せず、そのままTexture→Newで新しくテクスチャを作ります。<b>TypeをImage or Movieにして、Imageのところで今描いたカービィの顔画像を開きます。</b>
<img width="960" alt="kirby14.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/498199/99d86371-0197-8b94-46b1-a48612dbf982.png">

ここで、少し暗いので3D Viewでカービィの顔の前にライトを置いておきます。そしてShift+Zでレンダリングしてみると…
<img width="960" alt="kirby15.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/498199/752ad740-e2bd-eb8f-4d02-3ee20321d9b7.png">

少し顔が小さくなってしまいましたが、できています！

顔のテクスチャを貼る範囲が狭かったです。もう少し広く選択しておけば、顔のパーツが適切な大きさになったでしょう。

以上がBlenderを使ったカービィのモデリングになります。