PAToon2.98_MMMの使い方 その1

PAToon2.98をMMM対応しました。

配布 https://bowlroll.net/file/232412

バージョンによって使えたようですが、ver2の途中から互換性をほぼ失ってました。
本人がMMMユーザーなんだからもっと早く対応しろよ、と思わなくはないですが。

さて、
今回は改めてMMM用にPAToonの使い方を1からまとめておきます。
最近は追加機能しか説明しないのですべてを把握してる人は少ないのではないでしょうか。

目次
その1 基本的な使い方
    A【準備】
    B【適用方法】
    C【コントローラー1/影の方向】
    D【コントローラー2/色調】

その2 PAToonの種類
    【PAToon(無印) / PAToonKey / PAToonLite】
    【~_シェーダー / ~_モデル】
    【その他】
    【HAToon2設定例】

その3 その他の機能について
    【スフィア追従】
    【法線球面化】
    【法線Y値ゼロ】
    【影傾向テクスチャ】
    【ノーマルマップ】
    【拡張ExcellentShadow/拡張HgShadow】

+++++++++++++++++++++++++++++++++++++++++++++++++

その1 基本的な使い方

A【準備】

PMXEdigorにPAToonを適用するモデルを読み込みます。

PAToonを適用するモデルの顔材質の反射強度の小数点を~.039にしましょう。
瞳などの顔関連の材質もまとめて選択して~.039にしておくといいです。



次にPMXEに同梱ボーンモデルをドラッグ&ドロップ、して追加インポートします。



照明方向/影マップとセルフ影ボーンの位置を頭に合わせましょう。
頭ボーンの位置をベクトルコピー(右クリック)したものをベクトルペーストします。



照明方向/影マップの親は頭かセンター(グルーブ)が推奨です。
・頭          → 顔影が完全に頭の向きに固定される
・センター(グルーブ) → だいたい顔影が正面方向になる



頭の固定は方向が貼り付きすぎて後ろ向きなど不自然に見えることがあります。
全部手動調整する気があるなら頭の方が制御は完璧です。

今回、ボーンの埋め込みと位置合わせをしてくれるPMXEプラグインを用意しました。
同梱してあるファイルをPMXEditorのpluginフォルダに入れてお使いください。
位置合わせはしなくてよくなりますが、反射強度~.039は自分で設定しないとダメです。

以上で準備は終わりです。

B【操作】

PAToonKeyとPAToon無印の適用例を示します。
①PAToonKeyを適用する
MMMに「PAToonKey_シェーダー.fxm」を読み込んでモデルに適用します。
モデルに準備がしてあれば顔だけ正面の照明方向になります。


MMMからPAToonKey_シェーダー.fxmエフェクトを選択してRTタブを開きます。
ここでモデルに~.fxsubを適用すると嘘影方向のセルフ影=前髪影が出ます。


MMMのモードが地面影になってるとセルフ影が出ないので注意してください。


モデルに読み込んだボーンとモーフで操作できますが、
それとは別にPAToonコントローラー.pmxを読み込んで使っても構いません。→C

② PAToon無印を適用する
MMMにPAToon_シェーダー.fxm(無印)を読み込んでモデルに適用してみましょう。
適用の仕方はPAToonKeyと同じなので①を見てください。
適用した瞬間にモデルの影がすべて正面の照明方向になります。



PAToonKeyとの違いは下の画像と比較してください
下の画像では体はMMM標準の照明方向になってます。


PAToonKeyと同じくPAToonエフェクトを選択してRTタブを開きます。
ここでモデルに~.fxsubを適用すると前髪やスカート影などのセルフ影が出ます

C【コントローラーの操作(影)】

コントローラーはモデルに埋め込んだものと外部コントローラーの2種類あります。
 モデル埋め込みボーン      → そのモデルにだけ効く
PAToonコントローラー.pmx  → PAToonを適用したすべてのモデルに効く

複数のモデルにPAToonを使う場合はモデルの数だけPAToonを読み込む必要があります。
PAToon.fxのUI上でも幾つかの操作が可能です。

 照明方向/影マップ(回転/移動) 回転で照明方向、移動でセルフ影マップの位置
 セルフ影(回転/移動)セルフ影マップの向きと位置。物に遮られて出る影
 シェーダー(回転)  シェーダー影の向き。面の向き(法線)によって決まる影
 スフィア(回転)   スフィアの向き。面の向きとカメラ角度によって決まる光沢



とりあえず「照明方向/影マップ」ボーンを選択して回転してみましょう。
実際にボーンを回転した方が分かりやすいということもありますが、
ほとんどの人は「照明方向/影マップ」の回転だけ覚えれば十分です。

セルフ影はセルフ影ボーンの周辺の範囲にしか出ません。
照明方向ボーンを下に移動すると下の図のようになります。


セルフ影マップの大きさはモーフの「範囲拡大」「範囲縮小」で変えることができます。


範囲を拡大しすぎると影が粗くなります。
その場合は「LocalShadow_Header.fxh」をメモ帳で開いて、
シャドウバッファの数値を大きくすると綺麗になります。



数値は2の累乗、大きくした分だけ処理が重くなるので注意してください。
(ちなみにVSMシャドウマップの実装を1にしてもMMMでは無意味なので要注意)

D【コントローラーの操作2】
コントローラーでシェーダーの色調も可能です。
ボーンのXYZ移動がRGB(赤、緑、青)HSV(色相、彩度、明度)に相当します。

全体 材質全体の色(光部分、影部分、エッジ)
影  影部分の色
光  光の当たってる部分のみ


※画像の画面内に表示されてる数値はミーフォ茜さんの詳細情報プラグインによるものです



色の計算は加減算方式でマイナスも有効です。
XYZの数値はRGB(1,1,1)の10倍になっているので、±10以上の数値は無意味です。
HSVの場合も±10が限界値です(色相はループします)

色調はfxファイルのUIでも一部可能ですが、
両方いじってるとどっちで色調したか忘れやすいので注意してください。
(モデル埋め込みボーンと外部コントローラーでも同じことが起きます)


気に入った色調がある場合はfxmファイル内に数値を設定すると、
コントローラー設定なしで同じ色調のシェーダーとして使うことができます。
fxファイル内の数値はコントローラーの数値の1/10になるので注意してください。



モデルの材質をコントローラー色調の影響を受けさせたくない場合
環境色のBの小数点第3桁以降を「~.0039」にすると色調から除外されます。
瞳などの材質に設定するといいかもしれませんが、まれに誤作動するので注意してください。
(除外設定が必要ない場合はfxm側のフラグの前に「//」を入れてオフにできます)


MMMではエッジの色調はモデル選択の側からも可能です(α以外)。


とりあえず基本的な機能はここまでです。

(その2に続く)