blenderでMMDモデルを作ろう|第5-1回:ベイクとは、種類、手順
ベイク(焼きこみ)は「3Dを2D画像に落とし込むこと」と私は考えています。
(シミュレーションの保存もベイクと呼ばれたりします。)
デフォルトキューブでやってみるのでそれでイメージできるかもしれません。
キューブの各面にそれぞれ異なるマテリアルを割り当てました。
一つのマテリアルには上から千鳥格子も重ねています。
Smart UV Projectというのを使ってUV展開もしました。
Marginの値を大きくして、UVに隙間を与えています。
また、マルチレズモディファイアを使い、軽くスカルプトもしました。
いざベイク!
まずは編集モードに入り、UV Image Editorを開き、Newボタンをポチ。
適当な名前を付け、サイズを指定します。色は何でもOKです。
これで、キューブ_texという画像が、このオブジェクトに割り当てられました。
この状態がめっちゃ大事です。
カメラマークのレンダータブの下の方にBakeがあります。
ベイクにもいろいろ種類がありますが、まずテクスチャ(Textures)をやってみます。
Clearのところにチェックが入ってると画像をいったん全部透明にしてからベイクされます。
マージンが各UVの島(パーツ)からどれだけはみ出すかです。
Bakeボタンをポチ、すると、さきほどの真っ黒な画像がこうなりました。
この画像をImage -> Save as Imageで保存します(大事!)。
キューブを複製し、今ある6つのマテリアルを全て削除しました。
マテリアルタブでNewをポチ、新たなマテリアルを割り当てます。
テクスチャタブでNewをポチ、ImageのOpenから先ほど保存した画像を開きます。
すると、2つのキューブは全く同じ色になりました。
オレンジのマテリアルの上に張っていた千鳥格子もきちんとテクスチャになっています。
Bakeテクスチャを使うと、こんな感じで複数のマテリアルを1つのテクスチャに色として落とし込むことができます。
次に、Bakeのフルレンダー(Full Render)をやってみます。
フルレンダーはそのときの光源の向きや強さなど、すべてレンダリングするときと同じように計算して、画像にしてくれます。
今、ヘミライトを使っておりx,y,z軸すべて0の状態です。
そのため、下の面はほんとは赤色のマテリアルが割り当てられているのですが、真っ黒になっていることを覚えていてください。
再度編集モードに入り、+ボタンをポチ、新たな画像を生成します。
新たな画像が生成され(キューブ_fullという名前にしました)、今度はこの画像がオブジェクトに割り当てられています。
この状態でベイクモードをフルレンダーに変え、ベイクをポチ。
するとこんな画像ができました。
比較するとこんな感じです。
下の赤い面が真っ黒になっています。
マルチレズモディファイアを使ってスカルプトした結果も見えています。
もう一つキューブを複製し、先ほどと同様の方法で新たなマテリアルをわりあて、新たなテクスチャを作り、保存したキューブ_fullという画像を開いてみました。
なんか暗い………。
これはベイク前の光源とベイク後の光源で二重に計算されているためです。
マテリアルタブを下にスクロールし、シェーディングのところのシェードレスに✔をいれてみます。
シェードレスにすると光源はもう計算されなくなるため同じ明るさになりました。
※スペキュラ(光沢)はフルレンダーでもベイクされません。
まとめると、ベイクの手順は
- 編集モードで、UV Image Editorで新たな画像を生成し(または開いて)、画像を割り当てる
- ベイクボタンをポチ
- 画像を保存
です。
書いてみると単純な感じがしますが、1がなかなかうまくいかないこともあります。
うまくいかないときは再度新たな画像を生成してみるのがおすすめです。
私がよく使うベイクは
- テクスチャ(色のみ)
- フルレンダー(スカルプトした結果など含めて全部)
です。
ベイクでノーマルマップも作れるのですが今回は割愛します。
(リアル系のMMDではノーマルマップも使ったりしますよね。)
あとは、使用しているモディファイアによってベイクがうまくいかないことがあります。
うまくいかないときは必要なさそうなモディファイア(アーマチュアなど)のレンダーボタン(カメラマーク)をオフにしてやってみるのがおすすめです。
絶対やってる手順は正しいはずなのになぜかベイクがうまくいかないときもあります...。
そういうときは新しいblenderファイルを作成し、オブジェクトをアペンドし、そこでベイクしてみるとうまくいったりします。
では、まずは顔のベイクからやっていきますー。