前回はすでにある画像からノーマルマップを作る方法を試したが、今回はBlenderで自作して書き出しをやってみた。
平面で書き出す場合
適当に凸凹したオブジェクトを作って、「ビューポートシェーディング」を選んだ状態で、一番右の下向きトグルをクリックし、「MatCap」のアイコンをクリックしてノーマルカラーを選ぶ。
カメラを並行投影でフロント(正面)から縦がぴったりつくように「平行投影のスケール」の値を調整する。
「ビュー」>「ビューから画像をレンダリング」を押す。
「画像」から保存。
Photoshop等で正方形にトリミング。
Blenderに戻ってUVマッピングすると、綺麗に貼られた。
マルチレゾで書き出す場合
マルチレゾリューションで細分化したオブジェクトにスカルプトで形を変えてものをベイクする方法。
まず、立方体を出し、モディファイアーの追加で、「生成」>「マルチレゾリューション」を追加し、レベル数を5にして形をスカルプトで変えてみた。
マルチレゾのレベル数を0に戻す。
新規で画像(中身は空)をノードで追加しておく。
レンダーを「Cycles」にし、「ベイク」>「マルチレゾからベイク」にチェックを入れ、「ノーマル」になっているのを確認したら、「ベイク」ボタンを押す。
※立方体のUVマップはデフォルトのまま。UVマップは必要
ノーマルマップが生成されるので、保存する。
もう1つ立方体を出して横に移動させておき、それにマテリアルで先ほど書き出したノーマルマップをノードで貼る。
この時、貼る側の立方体もサブディビジョンサーフェイスを5回くらいかけておく。
ノーマルマップのノード。