見出し画像

Blenderで顔の法線を調整する2023

_(:3」∠)_オヒサ

動画を作るようになって制作期間が長期化する傾向になって、なかなかまとめ記事とか書くタイミングが難しいなって。やっぱ作ってる途中のはキリがいいところまで作ってしまいたいでござろう?

久々にちょっとタイミングが合ったというか、時間を壮大に無駄にして悲しみを覚えたので次やる時用にメモを残そうと思いました。

動機

Mirrorモディファイアを使うと中央の法線がおかしくなる

以前に法線を調整するって記事を書いたあと、そのやり方だとMirrorモディファイア使ったときに法線方向がバグるので、Mirrorモディファイアが使えないということが分かりました。

画像
Mirror中央の法線(マゼンタの線)が左向き。えっ左?
Mirror(X)で法線が合成された場合、Xの傾きは0になるのが正しいはず…

Mirrorモディファイアはよく使うし最後までApplyせずに置いておくことが多いので、Mirrorモディファイア付きでも問題ないやり方が必要でした。

表情変えすると法線が汚くなる

最近動画を作ることが増えて、やっと動画にしたときに問題になる場所が見えてきました(´・ω:;.:...

法線を修正したものをボーンやシェイプで動かすと、当然その動きに合わせて法線も動きます。特に目や口は良く動くのですが、この付近こそ陰影を排除したい場所だったりします。

というわけで、できれば動いた後の法線をコントロールしたいわけです。

法線調整2023は法線転送ベース

結局法線の調整は「表情やポーズを動かした後」の頂点に対して行う必要があり、これは法線転送でしか実現できません。

というわけで2023年以降は法線転送ベースでお送りいたします_(:3」∠)_

まぁ法線転送してポン出しだとちょっともう一息足りない絵になるので、一手間加えてはいます。その辺りメモを残しておきます。

【まずは】法線の表示の仕方【おさらい】

まずはおさらいで法線を表示していきます。

メッシュの編集モードの状態であればオーバーレイ設定の下の方に法線表示ボタンが表示されます。

画像

左から、頂点、面コーナー、面の順。

面コーナっていうのは面の角つまり面がもつ頂点ですね。面の情報ベースの頂点に必要な情報がだいたいここに入ってます。カスタム法線もここに入ります。

画像
面コーナーの法線表示

【とっても】法線転送の仕方【いまさら】

もう初心者向け解説の定番といっていい法線転送の仕方です。ご存じの方もおおいでしょう。

適当にUV球を縦に伸ばしてカプセル状にして顔に合わせて配置します。

画像

カプセルには顔と同じArmatureを設定して、動いても追従するようにしておきます。

画像

……

画像

顔にデータ転送モディファイアをつけます。

フェイシャル(Armature)の前につけると頂点が動いて法線の向きが変わるよ問題が発生するので、必ずフェイシャルの後に設定するようにします。

画像

ここでよくありがちな失敗としては、カスタム法線を編集するのでDataプロパティの AutoSmoothがONになっていないと反映されません。

またSubdivisionモディファイアを使っている場合は、UseCustomNormalsをONにする必要があります。たぶんコレが一番よく忘れられます。

画像
UseCustomNormalsデフォルトだとOFFなのよね

これでカプセルの法線が転送され、陰影が消えて顔が平らになります

画像

法線をみると綺麗にカプセルの方向を向いていることがわかります。

画像
画像

法線転送を調整する

ここまでで目や口元にでていた嫌な陰影はだいたい消えます。

画像
右が転送なし。目や口元の陰がツライ

ただ今回のような簡単な形状からの法線転送は顔の端や額周りも影が出なくなってのっぺりしすぎになります。

画像
顔から陰影が消えすぎた

転送元の形状を編集するのも一つのやり方ですが、より手数を抑えるために頂点ウェイトで転送の強さを調節するようにします。簡単な話転送量0にすれば元の陰影が現れるので、陰影の消えすぎを阻止することができます。

法線転送したい場所を選んで、転送量用頂点グループのウェイトを1に設定します。

画像

境目が急になりすぎる場合は、ウェイトペイントを使ってぼかしてあげると良いでしょう。

画像

法線転送を細かく調節する

頂点グループでのウェイト調整なので、頂点単位で設定ができます。

例えば鼻の上あたりですが、陰がちょっとブタっぱなぽくなっちゃってますよね。

画像

こういった場所ではウェイトを削って元の法線情報を使うことができます。

画像

さらに頂点情報のVertexWeightsの数字をスライドさせるとリアルタイムで法線方向の変化も確認できるので、最後の調整はこちらを使います。

画像

ちょっと陰があるくらいが好き☺️

画像

さらに調整するには

法線転送に加えて転送にウェイトを使う以上のことをする場合、さらに頂点転送メッシュを追加して部分的に適用していく方法と、頂点を手動で操作する方法があります。

簡単な話Mirrorモディファイアがあるとカスタム法線がおかしくなるので、MirrorモディファイアをApplyしてなくしてしまえばいいわけです。

手動編集の仕方

Mirrorモディファイアを確定して無くしてしまえば手動の法線編集が使えます。

法線転送が上書きしてしまうので転送のウェイトを減らしておく必要がありますが、両方同時に使用することはできます。

手動法線編集は「指定ポイントへ向ける」がたぶん一番使いやすいんじゃないでしょうか。

変更したい頂点を選択してメニューよりMesh/Normals/PointToTargetを選択、あるいはAlt+Lで下の方に法線操作用のメニューがでてきます。

画像
画像

メニューに書いてはありますが、次の3つを覚えておけばだいたいOK

  • ESC: キャンセル

  • クリック: 確定

  • Ctrl+クリック: クリックした場所に向ける

下のメニューが出ている間は視点切り替えや追加の頂点選択とかは自由にできます。クリックして確定するまで何度でもやり直せるので、いい感じになるまでCtrl+クリックで微調整します。

画像
Ctrl+クリックで選択頂点のカスタム法線がクリックした場所を向く

失敗したときは Mesh/Normals メニューの Set from Faces か Reset Vectors で手動で操作した状態をリセットできます。

画像

今は昔

昔は手動法線編集をすると勝手にMarkEdgeが入っていたのですが、最近はそういうことがないようです。たまたま?

画像
昔はこんな感じで選択してない変にも勝手にMarkEdgeが入ってた

青い線が入ったときはMarkEdgeが設定されちゃってるので、放置するとここに変な陰影がはいっちゃいます。

古いBlenderを使っているときは気をつけて不要なMarkEdgeが設定されたらクリアしてください。

この記事が気に入ったらサポートをしてみませんか?

コメント

AI_RAN
どこ調べても法線転写できなくて困っていたのですが、こちらの記事でUseCustomNomalsの存在を知って解決しました!
ありがとうございます。
とても有益な記事だったので思わずコメントしてしまいました。失礼いたしました。
おじゃ
あれ、わりと設定し忘れる所ですよね。解決してよかったです☺️
コメントを投稿するには、 ログイン または 会員登録 をする必要があります。
島根県益田市在住の、ゆるFIREしたフリーランスのCGエンジニア。 仕事ではゲームプログラマー・専門学校教師・サーバインフラ(ゲーム・IT)系エンジニアをやってきてたけど、ゆるFIREを機にアニメ制作にチャレンジ中だよ!
Blenderで顔の法線を調整する2023|おじゃ
word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word

mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1