見出し画像

B-Toonシェーダーだけでいい感じのトゥーン調を作る

この動画のエフェクト解説モドキをつらつら書いて行きます。前置きも何もありません。


PMXEで行う下準備

①顔・肌のテクスチャをベタ塗りに改変

使用テクスチャは以下の二枚です。

プレビュー

全てベタ塗りにしてしまうと立体感が無くなってしまったので、胸周りのみそのままです。

②口回りのエッジ倍率を0に

口回りのみ選択

このあたりの頂点をざっくりとでいいのでBOX選択し、編集(E)→選択頂点(V)→エッジ倍率(E)→0(0)にします。これをやらないとカメラが引きになった時に顔周りが汚くなってしまいます。

③顔法線を中央へ

大葉真琴様の「選択頂点の法線をZ軸方向に向けます。」をDLします。
顔の正面のみ頂点を選択します。どるる様のUVエディタを使用すると、とても選択し易いのでおすすめです。

顔の正面のみ頂点を選択

「選択頂点の法線をZ軸方向に向けます。」で先ほど選択した頂点を80%ほど前に向けます。

選択頂点の法線をZ軸方向に向けます。使用画面。

④鼻HL用材質を追加

まずは顔の材質を面のみ複製し、テクスチャを光らせたい部分のみ描画した透過画像に変更します。(本当は材質複製プラグインで複製したほうがいいです。)

顔のみ複製
今回使用したテクスチャです。
青い部分は切り抜いてください。

次に材質をALに反応するように ・反射色 ・環境色 ・反射強度 を変更します。

複製した材質(顔+)に透過画像を割り当て。
Raedmeに書いてある通りに ・反射色 ・環境色 ・反射強度 を調節。

最後に、AutoLuminous内のフォルダ内に入っているALMorphMaker(AutoLuminous4→Options→AutoLuminousSetterフォルダ内に入っています)を使用してモデルにALモーフを追加します。

エフェクトOFF

こんな感じ

照明
R,G,B 全て154
X,Y,Z -0.1,-1.0,+1.0
セルフ影
モード1 9999
アンチエイリアス・地面影をoff

単色スカイドーム
青色調整 0.070
拡大 1.000

シェーダー

今回お借りしたシェーダーはこちら
かなり改変を加えているので、これからシェーダーに行った改変を詳しく書いていきます。
結構長めです。
まずはless様のごちゃまぜシェーダー配布動画からAlternativeFull本体をDL、
AlternativeFullFrontend.exeを開きます。


①どのプリセットを元に改変するか選ぶ

先ほど開いたAlternativeFullFrontend.exeの「シェーディング1」
タブに移動。
この画面の状態でB-Toonシェーダーでデフォルトで用意されているプリセットの中から使いたいfxファイルをドラッグアンドドロップして開きます。
まずは上書き保存対策にこの状態で右上にある「参照(O)」というボタンを押して別名保存してください。
今回使用したプリセットと保存名は以下の通りです。

  •  00.B-Toon_顔→顔_改変に別名保存

  •  00.B-Toon_肌→肌_改変に別名保存

  •  02.B-Toon_髪→髪_改変に別名保存

  •  00.B-Toon→その他_テクスチャ無しに別名保存


②影色を調整

次に「シェーディング2」というタブに移動、上から二段目の項目にある
影の色に自己乗算結果を利用するというチェックボックスにチェックを入れて有効化、下のスライダーをそれぞれ以下の通りに設定します。
影の傾向色と書かれている紫色の辺りをクリックすると色の設定パレットを開けるので、「色の作成(D)>>」と書かれたボタンを押して影色を少し調整します。

顔_改変.fx
肌_改変.fx
(この二つは全く同じです。)
髪_改変.fx
その他_テクスチャ無し.fx
このfx.ファイルのみ影になった時に金属部分がそれっぽくなるといいなァという願いを掛けて
反射の種類と反射強度を変更しています。
意味はなかったです。

③影傾向テクスチャの使用

まずはモデルに使われているテクスチャを元に、テクスチャに沿って影を作りたい箇所を黒塗りにしたテクスチャを用意。

テクスチャと使用シェーダーは違いますが、意図は同じなのでこの動画も参考にしてみてください。

こんな感じにテクスチャで影になっているところを黒く塗り、それ以外(普通のB-ToonShaderと同じ挙動をさせたいところ)を灰色にして、完全に影の影響を受けさせたくないところ(ハイライト)を白く塗ったテクスチャを用意。頑張って塗ってください。



唇の下に影を入れ、顔には余計な影が落ちないように


次に、「シェーディング3」タブに移動します。
拡張テクスチャ欄の三段目にある影傾向テクスチャボックスの右側にある
「参照」ボタンを押し、先ほど別名保存したプリセットに合わせて影傾向テクスチャを開きます。

④シェーダーでエッジを独自描画

エッジタブでの設定はそれぞれこんな感じです。
テクスチャは使わずにこれだけで良いと思います。

顔_改変.fx

肌_改変.fx
髪_改変.fx
その他_テクスチャ無し.fx


⑤セルフシャドウの変更

シェーダーの改変はこれで最後です。
「セルフシャドウ」タブに移動してそれぞれのfxファイルの通りに設定を変更してください。


顔_改変.fx
肌_改変.fx
髪_改変.fx
その他_テクスチャ無し.fx

シェーダーのみ割り当てプレビュー

正直これでこの記事の内容7割終わりです。

ポストエフェクト

ここから先、記述のない設定項目は全てデフォルトのままです。

AutoLuminous

鼻、唇下のHLを作るために使用しました。
先ほどモデルに導入したALモーフの「LightOff」モーフを0.910にしています。

追記:完全上位互換のエフェクトを見つけました。
皆さんはミーフォ茜様の
ALで光る部分をテクスチャで指定するエフェクトを使いましょう。

ExcellentShadow

あまり使ったことがないので、未だに綺麗な影を作れません。

PostDropHair

前髪影の描画の為
シェーダーと色を合わせるため、前髪影.fx内にある 
// 前髪影色デフォルト(R,G,B) という項目の

= float3(0.9, 0.7, 0.6);

という箇所を

= float3(150, 109, 152)/255*0.9;

と改変して前髪影_B-Toon.fxと別名保存します。
後はりどみ通りにDropHairRTタブで髪材質に前髪影_B-Toonを割り当て、DropHairMaskRTタブで以下の材質に影マスク.fxを割り当てます。

PostDirectionalLight

後ろから当てている照明です。僕たち平行照明大好き!
いくつか種類がありますが、今回読み込んだのは
PostDirectionalLightToon.pmxです。

モデル全体にはfull_AScを割り当て、顔周りの材質とスカイドームにはInvisibleMaskを割り当てます。

ここでfull_AScを割り当てたのでトゥーン版を使用した意味はありません。

ボーン位置
X,Y,Z -0.45,1.00,-11.85
モーフ
弱く 0.370・強く 0.130   

PostRimLightToon

spaマップを加算することでセル調のライトっぽくなるエフェクトです。
ハイライトが足りない気がしたので、髪と肌にのみかけています。



モーフ設定値
横狭く 1.000
影無視 0.100

FXAA&SMAA

Ray-mmd1.5.2に付属でついてくるアンチエイリアスエフェクトです。
Ray-mmdのExtensionフォルダ内にあるポストエフェクトは全てRay-mmdを使っていなくとも使用できるので、Ray-mmdを普段メインシェーダーとして使用しない方も是非Downloadしてみてください。

msPowerDiffusion

ましまし様のとても使いやすいDiffusionエフェクトです。
顔周りのみ光りすぎないようにMask_BlackOut.fxを割り当てます。

モーフ設定値
明度_黒点 1.000
明度_白点 1.000
透明度 0.880

LightBloom

SMAAに同じくRay-mmd1.5.2に付属でついてくるDiffusionエフェクトです。
出来上がるDiffusionはトップクラスに美しい個人の感想ですですが、RTでのマスク機能がないので少し使いずらいです。

LightBloomController
BloomThreshold 1.000
BloomRadius+ 1.000
BloomColorAllV- 0.960
今回は全体に掛けて少し回りと馴染ませました。

WorkingFloorAL

毎度お馴染み仕事床君です。
Tr. 0.10
平素より大変お世話になっております。

編集ソフト

上からの白い光

白い平面レイヤーをいい感じに短くしたりぼかしたりしてから描画モードを比較(明)にします。
使える方はikeno様のikOverrayを使用したほうがいいと思います。
私は上手く使えません。

before
after

色調補正

いい感じに彩度をガン上げします。
今回はお借りしませんでしたが、ましまし様のmsColorCorrectionやRay-mmd1.5.2付属のColorGradingなんかを使ってもいいと思います。

彩度ってのは上げ過ぎなくらいが丁度良いのです。

その他映像効果

いい感じのノイズを追加し、画面の四隅を歪ませました。

いい感じにリッチなノイズを追加できたと思ったのですが、mp.4に圧縮する段階でほぼすべて吹き飛びました。
Ray-mmd1.5.2付属のFilmGrainを利用してもいい感じのノイズが作れると思います。
素敵なレンズ歪みを追加。ブラウン管テレビっぽさを出したかったのです。

完成

各工程のプレビューはこちらからご覧ください。


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