見出し画像

MMDモデルトゥーン化手順(msToonCoordinator2.1)

本記事では、自作モデル「やせいの式白石杏ver1.0」をmsToonCoordinator2.1を使用してトゥーン化した手順をまとめています。素人が試行錯誤しながらなんとか形にしたものなので、参考程度に見ていただければ幸いです。

msToonCoordinatorの基本的な使用方法については、配布元であるましまし様の以下の動画を参照ください。


今回作成するもの


最終的にこのようになるはずです。(はずです)

使用するモデルデータ


※【2022/04/03】太もも裏に重複頂点があり、意図しないエッジが描写されていたので修正しました。

やせいの式白石杏ver1.0を、msToon用にテクスチャベタ塗りしたりしたものです。後々登場する、影やハイライトの位置を指定するための.fxデータ、影色を指定するための.fxデータも同梱しています。

同梱の[readme.txt]をお読みいただいた上でご自由にお使いください。

作業環境


OS
 
Windows 10 Home(64bit)
CPU
 Intel Core i5 8500
RAM
 
8GB
グラフィックボード
 NVIDIA GeForce GTX 750Ti

準備(初回のみ必要な手順)


①以下のエフェクトをDL

※()内はサンプル画像で使用したバージョン

msToonCoordinator(ver.2.1)/ましまし様
ExcellentShadow(Ver.1.1)/そぼろ様
Croquis改(v2)/less様
PostRimLightToon(v07)/P.I.P様

【以下は必須ではないが使うとめっちゃアニメになる】
・お好みのステージ
SMAA/Rui様
msGradation(ver.2.0)/ましまし様
o_Diffusion(v0.5)/おたもん様

②「Croquis改_v2」フォルダ > [Croquis.fx]の以下の二か所を変更

1)「* 距離によるエッジ太さのコントロールを利用する」の部分

* 距離によるエッジ太さのコントロールを利用する
//#define USE_EDGE_STRENGTH_DISTANCE_CONTROL

 ↓変更

* 距離によるエッジ太さのコントロールを利用する
#define USE_EDGE_STRENGTH_DISTANCE_CONTROL

2)「* 色トレスエッジを使わないときのエッジの色」の部分
 ※エッジに関してはmsToonのコントローラーで調整できるので不要な作業かもしれませんが、いつもこの値でやっているので一応書いておきます。

* 色トレスエッジを使わないときのエッジの色
float4 FrontColor <
string UIName = "線の色";
string UIWidget = "Color";
bool UIVisible = true;
float4 UIDefault = float4(0, 0, 0, 1);
> = float4( 0.0 , 0.0 , 0.0 , 1.0 );

 ↓変更

* 色トレスエッジを使わないときのエッジの色
float4 FrontColor <
string UIName = "線の色";
string UIWidget = "Color";
bool UIVisible = true;
float4 UIDefault = float4(0, 0, 0, 1);
> = float4( 0.28 , 0.07 , 0.06 , 1.0 );

③「msToonCoordinator_v2.1」フォルダ > [Shade.fx]の以下の三か所を変更

1)「//MMDでアンチエイリアスをOFFにするときはコメントアウトしてください」の部分

//MMDでアンチエイリアスをOFFにするときはコメントアウトしてください
#define ANTIALIAS

 ↓変更

//MMDでアンチエイリアスをOFFにするときはコメントアウトしてください
//#define ANTIALIAS

2)「//ベース色と影色の境界で色を強調する」の部分

//ベース色と影色の境界で色を強調する
#define EDGE_CHROMA

 ↓変更

//ベース色と影色の境界で色を強調する
//#define EDGE_CHROMA

3)「// 背景のクリア値」の部分

// 背景のクリア値
float4 ClearColor = {0.0, 1.0, 1.0, 0.0};

 ↓変更

// 背景のクリア値
float4 ClearColor = {1.0, 1.0, 1.0, 0.0};

④「msToonCoordinator_v2.1」フォルダ > [Edge.fx]の以下の一か所を変更

1)「//MMDでアンチエイリアスをOFFにするときはコメントアウトしてください」の部分

//MMDでアンチエイリアスをOFFにするときはコメントアウトしてください
#define ANTIALIAS

 ↓変更

//MMDでアンチエイリアスをOFFにするときはコメントアウトしてください
//#define ANTIALIAS


⑤配布データの「Shade_杏ちゃん」フォルダ内のファイルを、すべて「msToonCoordinator_v2.1」フォルダ > 「Shade」フォルダにコピー


⑥同様に「ShadeColor_杏ちゃん」フォルダ内のファイルを、すべて「ShadeColor」フォルダにコピー


トゥーン化手順


01 モデルのロード

MMDでモデルをロード
※「表示」>アンチエイリアスをOFFにする

02 エフェクトをかけるベースを作る

「エフェクト割当」

◆「Main」タブ
「msToonCoordinator_v2.1」フォルダ > 「Main」フォルダ
>[SimplePaint_EgeOff.fx]をモデルに適用
>「OK」

03 [Shade.x]をロード

「msToonCoordinator_v2.1」フォルダ
>[Shade.x]をMMDに直接D&D

04 [ExcellentShadow.x]をロード

「ExcellentShadow」フォルダ
>[ExcellentShadow.x]をMMDに直接D&D

05 msToonのコントローラーをロード

「msToonCoordinator_v2.1」フォルダ
>[msToonCoordinatorController.pmx]をMMDに直接D&D

06 コントローラーの初期値を設定

「msToonCoordinator_v2.1」フォルダ
>[default_v2.vmd]をMMDに直接D&D

 ※エラーが起きる場合はMMDの「ファイル」>「モーションデータ読込」から開く

07 [ExcellentShadow.x]をmsToonで描画

「エフェクト割当」

◆「Main」タブ
 [ExcellentShadow.x]を✔OFF
◆「msTC_ShadeRT」タブ
 [ExcellentShadow.x]を✔ON
>「OK」

08 [Edge.x]をロード

「msToonCoordinator_v2.1」フォルダ
>[Edge.x]をMMDに直接D&D

09 [Croquis.x]をロード

「Croquis改_v2」フォルダ
>[Croquis.x]をMMDに直接D&D

★★「アクセサリ操作」で X:1、Y:0.5、Z:1、Si:4 に設定★★

10 [Croquis.x]をmsToonで描画

「エフェクト割当」

◆「Main」タブ
 [Croquis.x]を✔OFF
◆「msTC_EdgeRT」タブ
 [Croquis.x]を✔ON

11 影、ハイライトの描画を制御

◆「msTC_ShadeRT」タブ

  1. モデルを選択した状態で右クリックで「サブセット展開」をON

  2. ②「msToonCoordinator_v2.1」フォルダ
    >「Shade」フォルダ内の各.fxファイルを材質ごとに割り当て、影、ハイライトの出やすさを設定

[Shade_AN_hair.fx]
7:hair

[Shade_AN_eye.fx]
20:eye

[Shade_OFF.fx]
21:eye_hikari
29:cheek

[Shade_AN_face.fx]
22:eye_white
24:face
25:mouth
26:tongue
27:tooth

[Shade_Shade1_Absolute.fx]
28:hairshade

[Shade_ExShadow.fx]
上記以外

※各.fxファイル内で指定しているpngファイル(face_an.pngなど)を編集すれば、好きな位置に影、ハイライトを描画できます。影を出したくない部分は赤、影を出やすくしたい部分は青、ハイライトにしたい部分は緑で塗ります。

配布モデルの「UVmap」フォルダにUV展開図をぶち込んでいるので、よろしければそちらを元に塗り塗りしてください。

.fxファイルを複製しテキストエディタで開き、以下の記述をご自分で用意したpngファイルに書き換えれば、服等の影・ハイライトも制御できます。

//eye_an.pngの部分を書き換える※pngファイルは.fxファイルと同じフォルダに入れる
#define SHADOW_RATE_TEXTURE "eye_an.png"

12 影の色を制御

◆「msTC_ShadeColorRT」タブ

「msToonCoordinator_v2.1」フォルダ
>「ShadeColor」フォルダ内の各.fxファイルを材質ごとに割り当て、影色を設定

[ShadeColor_Skin_AN.fx]
1:body
25:face

[ShadeColor_Hair_AN.fx]
7:hair

[ShadeColor_Tops_AN.fx]
19:tops

[ShadeColor_White_AN.fx]
22:eye_white
27:tooth

[ShadeColor_Auto.fx]
上記以外
※色はmsToonCoordinatorController.pmxの表情操作の影1で編集可能

※各fxファイル内で指定しているpngファイル(shadecolor_skin_AN.pngなど)を編集すれば、好きな色の影を描画できます。

当モデル用に配布しているpngファイルは1×1ピクセルの豆粒サイズで作っているので、かなり拡大しないと目視すらできないかもです。

.fxファイルを複製しテキストエディタで開き、以下の記述をご自分で用意したpngファイルに書き換えれば、好きな影色を設定できます。

//shadecolor_skin_AN.pngの部分を書き換える※pngファイルは.fxファイルと同じフォルダに入れる
#define SHADOW_COLOR_TEXTURE "shadecolor_skin_AN.png"

13 前髪の影をmsToonでのみ描画

◆「Main」タブ

28:hairshade を✔OFF

14 エッジの描画を制御

◆「CM_ObjectColorMap」タブ
◆「CM_EdgeStrengthMap」タブ
◆「CM_NormalDepthMap」タブ

「Croquis改_v2」フォルダ内の各.fxsubファイルを材質ごとに割り当て、エッジを設定

◆「CM_ObjectColorMap」タブ

[ColorDrawCanceler.fxsub]
2:bottoms
6:earrings
13:jacket
20:eye
21:eye_hikari
22:eye_white
23:eyelashes
24:face
27:tooth

✔OFF
28:hairshade
29:cheek

[ColorDraw.fxsub]
上記以外

◆「CM_EdgeStrengthMap」タブ

[EdgeStrengthDraw.fxsub]
1:body
2:bottoms
13:jacket

[EdgeStrengthDrawCanceler.fxsub]
20:eye
21:eye_hikari
22:eye_white

✔OFF
28:hairshade
29:cheek

[EdgeStrengthDrawYoreyore.fxsub]
上記以外

◆「CM_NormalDepthMap」タブ

✔OFF
23:eyelashes
28:hairshade
29:cheek

[SubDraw.fxsub]
上記以外

※エッジに関しては完全にフィーリングで設定しています。所々意味のないことをしていたらすみません。

15 [PostRimLightToon.pmx]をロード

「PostRimLightToon_v07」フォルダ
>[PostRimLightToon.pmx]をMMDに直接D&D

★★「表情操作」で 赤:1 に設定★★

16 [PostRimLightToon.pmx]をmsToonで描画

「エフェクト割当」

◆「Main」タブ
 [PostRimLightToon.pmx]を✔OFF
◆「msTC_SublightRT」タブ
 [PostRimLightToon.pmx]を✔ON

17 サブライトの色を制御

[msToonCoordinatorController.pmx]の「表情操作」で Sub1明度:1 に設定


これ以降はお好みで

①ステージの設定

  1. お好みのステージをロード
    (サンプル画像ではしゃち様の単色スカイドームv1.0を使用)

  2. 「エフェクト割当」で各タブを以下のように設定
    (msToonの影響を受けないように設定しています)

◆「Main」タブ
[SimplePaint_EgeOff.fx]を適用

◆「msTC_ShadeRT」タブ
[Shade_OFF.fx]を適用
※影つけるなら[Shade_ExShadow.fx]

◆「msTC_SubLightRT」タブ
[SubLight_OFF.fx]を適用

◆「msTC_EdgeRT」タブ
[Edge_off.fx]を適用

◆「PRLToon」タブ
✔OFF

◆「CM_ObjectColorMap」タブ
[ColorDrawCanceler.fxsub]を適用

◆「CM_EdgeStrengthMap」タブ
[EdgeStrengthDrawCanceler.fxsub]を適用


②画面全体にグラデーションをかける

  1. 「msGradation_ver.2.0」フォルダ > 「msGradation1」フォルダ
    >[msGradation1.x]と[msGradation1Controller.pmx]をMMDに直接D&D

  2. [msGradation1Controller.pmx]の表情操作で以下に設定

    角度:0.25
    輝度:0.2
    加/ス/乗/オ:0.25

  3. 「msGradation_ver.2.0」フォルダ > 「msGradation2」フォルダ
    >[msGradation2.x]と[msGradation2Controller.pmx]をMMDに直接D&D

  4. [msGradation2Controller.pmx]の表情操作で以下に設定

    角度:0.75
    色相:0.52
    彩度:1
    加/ス/乗/オ:0.75

③ディフュージョンフィルタをかける

  1. 「o_Diffusion_v0_5」フォルダ
    >[o_Diffusion.x]をMMDに直接D&D

  2. [o_Diffusion.x]のアクセサリ操作で Si:0.5 に設定

④アンチエイリアスをかける

「SMAA-master」フォルダ
>[SMAA.x]をMMDに直接D&D


完成

  • 出力する時は美影ONにすると影が綺麗です。

  • DOF系エフェクトを使用してモデルのエッジが削られてしまうor変にボケてしまうときは、P.I.P様の「DOF各種エッジ対策の併用がおすすめです。

「ここ間違ってるよ!」「こうした方が綺麗だよ!」等々ございましたらぜひご教示ください!


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