【Blender】MMDモデルをトゥーンっぽくシェーディングする

はじめに

mmd_toolsというアドオンを使用するとPMX形式のファイルをBlenderにインポートすることができますが、デフォルトだと陰影がついて、ちょっとリアルな感じになってしまいます。
(参考モデル:ニコニ立体ちゃん

ライティングで雰囲気を変えることもできますが、本記事はシェーディングのノードを調整して見た目を調整しようという記事です。

こんな見た目に調整します。

なお、調べた範囲ではわからなかったのでこの記事を書いていますが、デフォルトでもパラメータ調整でできるよって場合には是非コメントで教えて下さい。

環境

Blender4.3(EEVEE、cyclesはフォローしていません)

mmd_tools 4.3.6

Blender3.6でも確認しています。
なお、本記事ではmmd_toolsの導入については解説しませんので、あしからず

また、本記事中に貼るスクリーンショットではシェーディングノードの上部にプレビューが表示されていますが、これは有料アドオンによるものです。デフォルトでは表示されませんので、ご注意ください。

いちばん簡単な方法

こちらはライティングなど不要!!という方向けです。

インポートしたモデルのメッシュのいずれかを選択し、マテリアルの編集画面を開きます。

このとき選択するマテリアルは何でも良いですが、MMDShaderDevというノードが含まれていることを確認してください。

mmd_toolsでインポートしたモデルのマテリアルには基本的に共通でMMDShaderDevというノードが含まれています。

多くのモデルではマテリアルが大量にあり、個別で1つずつ編集するのは面倒なので、共通で存在するMMDShaderDevを編集することで一括で反映されるようにします。
※結構乱暴な方法なので、不都合が出る可能性もあることはあらかじめご承知おきください。

シェーディング画面を開いたらMMDShaderDevのノードを右クリックしてグループ編集を選択してグループノード内部を表示します。

するとこのようなノード構成になっていると思うので、ここにあるディフューズBSDFを削除して、その手前のミックスノードの出力を直接シェーダーミックスに接続します。

下図のように

このように接続するとメッシュがライティングの影響を受けずにテクスチャがそのまま表示されるため、リアルな陰影がつかず、きれいに表示されます。

前述の通りこちらの方法ではライティングの影響を全く受けないので、もしライティングによる陰影をつけたい場合にはテクスチャ自体を調整する必要がありますのでご注意ください。ライトの色なども反映されません。

ライティングの影響を入れたい!

そうは言っても、やっぱりライティングの影響をいれたいという方はこちら。

あらかじめ記載しますが、ここでの方法はあくまで一例なので、ご自身の思った通りの見た目にしたい!という場合には色々試行錯誤していただくことをおすすめします。

完成図はこちらです。

ディフューズBSDF:ライティングの影響を受け取り

シェーダのRGB化:ディフューズBSDFの結果をRGBに変換

カラー分離(HSVを選択):値(輝度)を取り出し

カラーランプ:値(輝度)を階調化 (リニア → 一定 に変更

カラー合成:階調化した輝度を用いてRGBに戻す

乗算:テクスチャと階調化したライティングのRGBを合成

シェーダーミックスへ

このような構成にするとライティングの影響を受けつつ階調化することでトゥーンっぽい見た目にすることができます。

右から光を当てると右側が明るくなります(これだとちょっと見た目が悪いですね・・・)

赤い光を当てると赤くなります。

さいごに

前述の通りこちらのノード構成はあくまで一例です。
もっときれいにしたいという場合にはより複雑なノード構成や、階調の付け方を調整してやる必要があると思います。

使用するモデルの雰囲気やライティングによって適切な設定は変わると思いますので、ベストな見た目になるよう試行錯誤してみてください。

最後までお読みいただきありがとうございます。

コメント

タイトルとURLをコピーしました