Blender : ハイポリからローポリ/ノーマルマップのベイク
ハイポリのベイク
ハイポリのメッシュオブジェクトを作った際、ポリゴン数が重いのでこれをベイクして板ポリに焼き付ける。作ったメッシュをノーマルマップとしてテクスチャにする。ベイクする時はCycles、利用はEeveeで使える。
参考チュートリアル
ハイポリゴンを作る
ダイナミックトポロジー
ここでは適当にAと描いた。
スカルプト時に色を変えたい時はビュー表示のメニューから色々と変更できる。
ハイポリの準備はこれで終わりなのでベイク先のローポリを作る。
ローポリの準備
ベイク先のローポリとテクスチャの準備。平面を作ってUV展開されているかチェックする、展開されていないとベイクできない。
展開を確認出来たらベイク先のテクスチャを新規で作る。shadingタブに移動、画像テクスチャノードを追加。
新規でテクスチャを作成する、このテクスチャにベイクする。アルファは使わないのでチェックを外す。テクスチャサイズは使用用途によりけり、Unityは2048という記事をみた。
ノーマルマップはカラーデータではないので、色空間をNon-Colorに変更しておく。これでベイク先の準備はOK。
レンダリング・ベイクの設定
エンジンをCycles、ベイク項目のタイプをノーマル、選択物→アクティブのチェック。 レイの距離を設定、この距離はZ軸方向の高さをどこまでベイクするかの設定。単位がメートルなので画像は4メモリで40cmになる。少ないと途中まで焼きこまれる。
試しにレイの設定を短く0.05mでベイクしてみる。ハイポリ→ローポリの順で選択してベイク、画面下部に進捗バーが出る。すると途中でベイクが切れている。
ベイクが正常にできた状態、必ず画像を保存する。
シェーダーノードの設定
ベイクされた画像をノーマルマップとしてソケットを繋ぐ。板ポリにノーマルマップで出来た陰影が表示される。
完成とテスト
ライトのポジションを変えて正常に出来ていることの確認。