Azolt MMDWorks

【MMD備忘録】ray-mmdでトゥーン調 ~導入編~

2019/03/04 00:49 投稿

コメント:4

  • タグ:
  • MMD
  • MikuMikuDance
  • MMD講座
  • MME
おはこにゃばちにんこ。
 そう、今回はray-mmdなんだ。色々やってみたんですが、結局トゥーン系に行きついちまった・・・。まぁこれはこれでアリだと思うので備忘録残しておきます。(ちなみに執筆時点のバージョンは1.5.2)

◆What is ray-mmd ?
 https://github.com/ray-cast/ray-mmd


 リアル系エフェクトです。と言っても、この記事見てる人にわざわざ説明は不要でしょうか。触ってみた所感としては、光・影・色調をコントローラーで一括調整できて便利な反面、調整パラメータが多すぎて何からやっていいのか混乱しそうな感じです(私は混乱しました)。そんなray-mmdですが、上の画像の左下を見ると分かるように、実はトゥーンシェーディングにも対応しています。ただ、デフォルトではその機能はOFFになっています。

◆How to ray-mmd toon ?


※モデルはhttps://3d.nicovideo.jp/works/td52205からお借りしました。

 結論から言うと、GAJ氏制作の日本語ドキュメントに載ってます。
 ドキュメントの説明によれば、ray-mmdにおいてユーザーが調整可能な要素は以下の4つです。
・グローバル設定(ray-conf)
・ray-controller
・スカイボックス
・マテリアル
 グローバル設定はray-mmd自体の設定。使用機能やその種類を編集します。ray-controller、スカイボックスは色調や明るさ、影の濃さなど絵作りに関する設定。マテリアルはモデルの材質設定、つまりです(シェーダーともいう)。本当はray_advanced.confという設定ファイルも存在するのですが、分かる人用ということで特に説明がなく、私もまだいじっていないので今回は省きます。

◆Let's go hands-on !
 さて、今回重要なのはグローバル設定とマテリアルです。まずはray.confを開きましょう。エディタは何でも良いです。「Outline Tab」と「Toon-shading material」というパラメータを探してください。それぞれ以下の意味があります。
・Outline Tab
 エッジ設定機能のON。MMEの「エフェクト割当」で表示されるタブに「OutlineMap」
 タブが追加される。

・Toon-shading material
 トゥーンシェーディングを有効にするかどうか。

 詳しい解説はドキュメントを見て頂くとして、今回はどちらも2に設定してください。保存したらMMDを起動・・・の前にモデルをセットアップしましょう。pmxエディタでモデルを開き、全材質を以下のように設定してください。(勿論、編集前のバックアップは忘れずに)

①スフィアを「無効
②拡散色「1, 1, 1」反射色「0, 0, 0」環境色「0.5, 0.5, 0.5
③反射強度「5



 保存したら、今度こそMMDを開きモデルを読み込みましょう。その後に以下を読み込んでください。
①ray.x
②ray_controller.pmx
③Skybox\Time of day\Time of day.pmx
 読み込んだらMMEの「エフェクト割当」を開き、「EnvLightMap」というタブでSkybox\Time of dayTime of lighting.fxをスカイボックスに割り当てます。うまくいけば、おそらく↓のような感じになります。



 Oh...
 とりあえず暗い。顔も怖いです。私と同じで暗すぎる感じになった方は、ray_controllerで「SunLight+」「Exposure+」、スカイボックス(Time_of_day)の「EnvDiffLight+」をいじってみましょう。明るくなるはずです。
 「ふえぇぇ、明るくしたところで全然可愛くないよお~(泣)」となったあなた。安心してください。ここからが本番です。

◆Material



 MMEの「エフェクト割当」を開きましょう。「MaterialMap」。ここが戦場です。と言っても、今回は導入編なので先人の力を借りてさくっといきます。下のリンクに、なんとトゥーン調整されたマテリアルが配布されているので、感謝の念と共にダウンロードしてください。
https://bowlroll.net/file/151160

 zipを展開したら「Toon_RC」というフォルダが入っていますので、ray-mmd-1.5.2\Materialsの下に配置します。配置したらフォルダ内を見てみましょう。Toon~から始まる名前のfxファイルが入っているかと思います。例によって、skinとかhairとか材質ごとに調整されたものがあるので、それぞれに合ったものをMaterialMapタブから適用させてみます。



 あ、なんかトゥーンっぽい。
 でも顔の影がな~と思ったあなた。顔用のマテリアルを別に作りましょう。skin用マテリアルを複製し、エディタで開きます。「const float customA」というパラメータを探して値をいじってみてください。影の範囲が変わるはずです。0.0を入れると、影は完全になくなります。



 はい、ちょっと良い感じになりましたね。とりあえず導入編ということで、今回はここまでです。次回はマテリアルの中身を本格的にいじります。

 感想・質問などお待ちしております。
 それでは。



コメント

azolt (著者)
No.3 (2020/01/26 17:24)
>>2
スカイボックスはどれでもかまいませんよ!
影の付き方が違うのは、環境光がそれぞれ異なるせいですね。
「EnvDiffLight-」で環境光を弱めれば、どのスカイボックスでも同じような影の付き方になると思います。
Ek
No.4 (2020/03/17 23:32)
>>3
なるほどぉ、ありがとうございます!m(_ _)m
The Night
No.5 (2020/05/18 00:08)
why my face no shadow from hair?
コメントを書き込むにはログインしてください。

いまブロマガで人気の記事