Blenderで画像のベイクを行う方法について説明しています。Ver2.91以降に対応していますが今後のアプデで変わるかもしれません。
ベイクとは
Blenderでのベイクとはざっくり言うとマテリアルの色や粗さ、光沢、シェーディングなどを合わせたレンダリング結果を一枚の画像に焼き込むというもの。
以下のような場面で画像をベイクをすることが多い
- 他のソフト(Unity)などにレンダリング結果を持ち込みたい
- 凸凹を表現するためにノーマルマップを作成したい
- 処理を軽くしたい
Blenderで作成したマテリアルの情報は他のソフトに持っていく事ができるがシェーディングの設定などは持ち込めないため表現が大きく異なってしまうことが多い。それを避けるための方法がレンダリング結果を1枚テクスチャにまとめて持ち込む、というもの。
凸凹を表現するノーマルマップは作成の際ベイクをする作業が必要。あとゲームなどで処理をできる限り軽くするためにリアルタイムでシェーディングするのではなくベイクした画像で対応するといったこともあるそうだ。
画像をベイクする
例としてベースカラーを赤色にしたマテリアルが割り当たっている立方体(Blender起動時に自動で置かれているやつ)をベイクします。
ノーマルマップ(法線マップ)をベイクしたい、という人はやり方が異なるのでこちらの記事で
まずベイクをしたいマテリアルが割り当たっているオブジェクトのUV展開を済ませておく。
UV展開が済んだらプロパティから「シーン」を選択してレンダーエンジンをCyclesに変更する。
トップバーから「シェーディング」を選択し、ベイクしたいマテリアルが割り当たっているオブジェクトを選択する。
ノード画面から「追加」→「テクスチャ」→「画像テクスチャ」を選択する。
画像テクスチャを追加したら「新規」をクリックして新規のテクスチャを作成する。解像度は自由に設定していいが2の乗数にしておくのが無難。512、1024、2048あたり。
ビューポート画面で先ほど作成したテクスチャを選択する。
プロパティから「シーン」を選択して「ベイク」を選択する。この時出力先が画像テクスチャになっているか確認すること。照明や光沢の影響だけをなくしたい、という場合は「影響」から各自設定する。
ベイクが始まる。重めの処理なのでPCのスペックが低い場合は気長に待ちましょう。ベイクが完了するとビューポートにベイクの結果が表示される。
ベイクをする際の注意
ベイクをする際マテリアルのメタリックの値は0にしておくこと。メタリックの値が1の場合、どうも色が反映されず真っ黒になってしまうとのこと。
複数のオブジェクトが存在している場合(人体モデルで服が複数あるなど)はベイクしたいオブジェクト以外のレンダリングをオフにしておくこと(非表示ではダメ)。また法線が裏返っていないかも確認しておきたい。
コメント