昨日の記事で「影」を出すトゥーンシェーダー
について終盤で少しだけ紹介しました。
今回は「影用トゥーンシェーダー」の使い方
について軽く説明したいと思います。
まず「影用トゥーンシェーダー」を適用すると
どう見えるのか下の画像をご覧ください。
/////『影用トゥーンシェーダー』について////
...((「影用トゥーンシェーダー」の使い方))...
(MMDにモデルを読み込んだ状態)
MMDにモデルを読み込んだ状態です。
今回は配布モデルのテクスチャなどを
変更した改変モデルを使用しておりま
すので額や目の中、首、口元に影が
ついてますが、これはテクスチャに
描いた「嘘影」ですのであまり気に
しないで下さいね。
MMD標準影はかなり薄い色しか出
ないので上の画像では見えづらい
かもしれません。
次に「影用トゥーンシェーダー」を読み
込んで顔に適用してみましょう。
(「影用トゥーンシェーダー」を顔に適用)
「影用トゥーンシェーダー」をMMD画面
右上のMMEffectメニューにあるエフェ
クトファイル割り当てを選び、編集メニュ
ーのサブセット展開で材質を表示して
その中の顔をクリックしたら下にある
ファイル選択ボタンで「影用トゥーン
シェーダー」のFXファイルを開けば顔に
影がつきます。
「影用トゥーンシェーダー」を適用した
状態では上の画像のように顔に影
がたくさんついてしまってるので
調整を行ってあげます。
(影の出方を調整した後)
「影用トゥーンシェーダー」の影の調整は
([カメラ編]ボタンを押して[モデル編]に
なってる状態で)MMD画面下にある
「照明操作」のXとYとZのスライダーを
左右に動かし、それにつれて影が動く
のでいいと思った所で止めて登録ボタン
を押して確定して下さい。
「影用トゥーンシェーダー」の基本的な
使い方はこのようなカンジです。
地面に映る影はMMDの表示メニュー
から地面影表示のレ点チェックを
外せば消えます。
影色をもっとうすい色にしたい時は
あるMMDエフェクトを利用すると
調整がカンタンに行えるのでその
方法をこれから紹介しますね。
...((「影用トゥーンシェーダー」微調整の方法))...
(用意するもの)
・M4Layer
配布ページ(エフェクト製作者ミーフォ茜様のサイト)
http://star3.glasscore.net/Pages/3dcg/Effects/
(M4Layerの設定)
・M4Layer.fxをWindowsアクセサリ
フォルダにあるメモ帳(またはテキスト
エディタ)で開いて33行目
#define LAYER_MODE 0
に0を入力し上書き保存する。
(M4Layer.fxファイルの中身)
M4Layerはいろいろなレイヤー
モードを使い分ける事があるため
InvisibleMask.fx、M4Layer.fx、
M4Layer.x、VisibleMask.fxを
コピーして新規フォルダ作成で
フォルダの中に貼り付けてバック
アップを取っておきましょう。
準備が整ったのでMMDでの作業
に移ります。
これからの工程数は4つくらいです
が難しい事は特にありません。
(調整前の影色)
「影用トゥーンシェーダー」をさきほど
説明した方法で適用すると影色は
少し濃い色で出ます。
この影色をもっとうすくする場合の
やり方ですが、追加使用するのは
M4LayerだけでOKと手間はそれ
ほどかかりません。
(MMDにM4Layer.xを読み込む)
M4Layer.xをドラッグしてMMD画面の
中に放り込むか(モデル編が表示され
ている状態で)MMD画面下のアクセサリ
操作の[読込]ボタンを押してM4Layer.x
を開くなどして読み込みます。
M4Layer.xが読み込まれると画面
背景が黒くなり影用トゥーンシェーダー
の影が消えます。
影が消えたのはM4Layer.xが既に
適用してあったエフェクト効果を打ち
消してしまったからです。
M4Layer.xのモード0:通常の場合
エフェクト効果を消しますが、他の
モードで例えば3:乗算であれば
エフェクト効果を消さずに他のエフ
ェクト効果を適用する事が可能
だったりするので使いやすいモード
を選ぶといいと思います。
使用頻度が高いのは
// 0: 通常
// 1: 加算
// 3: 乗算
// 4: スクリーン
この4種類ですね。
それでは作業に戻って
(Mainタブのトゥーンシェーダーを解除する)
「影用トゥーンシェーダー」はMainタブ
ではなく[LayerRT]タブに適用する
のでMainタブに適用してあった場合
は選択して解除ボタンを押して消して
おいて下さい。
次の工程で最後です。
(最終工程)
エフェクトファイル割り当ての[LayerRT]
タブの顔をクリックして「影用トゥーンシェー
ダー」をドラッグ&ドロップまたはファイル
選択で開いてOKボタンを押すとトゥーン
シェーダーの影が復活して表示されます。
Mainタブでは影色調整が出来ません
でしたが[LayerRT]タブに適用すると
MMD画面下の「アクセサリ操作」に
あるSi値1.0の数値を変更する事で
影色濃度の調整が行えるように
なります。
上の画像ではためしに1.0→0.3
に変更して影色を薄くしました。
若干手間はかかりますが程よい
色味はその時のエフェクト適用
だったり照明効果等の状況に合
わせて微調整出来たほうが便利
だと思うのでトライしてみてください。
---..---.おまけ.---..---
--..------..------..--
昨日紹介した「影用トゥーンシェ
ーダー」のバリエーションをいくつか
載せておきます。
プリセット化して数種類を使い分け
るやり方もアリだと思うのでよかっ
たら使ってください。
ちなみに自分の場合12種類
影色バリエーションを作って
今は5種類くらいを定番で使って
ますね。
顔と髪、衣装それぞれ濃さを
微妙に変えるためです。
使い方等は前々回や前回の
ブログ記事に詳細を載せてあ
ります。
①最も薄い影色(顔影向き)
---(これより下の内容をコピーし貼り付ける)---
/* ------------------------------------------------------------
* AlternativeFull
* ------------------------------------------------------------ */
#define TEXTURE_THRESHOLD "shading_hint_katturi2.png"
#define USE_MATERIAL_TEXTURE
#define USE_SELFSHADOW_MODE
#define USE_NONE_SELFSHADOW_MODE
#define USE_SOFT_SHADOW
float SoftShadowParam = 10;
float SelfShadowPower = 0.01;
#define USE_SHADOWCOLOR_SELFPOWER_MODE
float SelfPowerShadowStrength = 0.01;
#define USE_MATERIAL_SPECULAR
#define USE_SPECULAR_CHEET
float SpecularBoost = 4.02;
#define USE_MATERIAL_SPHERE
#define USE_SPHERE_CHEET
float SphereBoost = 1.17;
float3 DefaultModeShadowColor = {0.999,0.999,0.999};
#define USE_MIPMAP
#define FX_MAX_ANISOTROPY 16
#define MAX_ANISOTROPY 16
#include "AlternativeFull.fxsub"
---(これより上の内容をコピーし貼り付ける)---
②最も濃い影色(強い照明効果を使った場合向き)
---(これより下の内容をコピーし貼り付ける)---
/* ------------------------------------------------------------
* AlternativeFull
* ------------------------------------------------------------ */
#define TEXTURE_THRESHOLD "shading_hint_katturi2.png"
#define USE_MATERIAL_TEXTURE
#define USE_SELFSHADOW_MODE
#define USE_NONE_SELFSHADOW_MODE
#define USE_SOFT_SHADOW
float SoftShadowParam = 10;
float SelfShadowPower = 0.05;
#define USE_SHADOWCOLOR_SELFPOWER_MODE
float SelfPowerShadowStrength = 0.5;
#define USE_MATERIAL_SPECULAR
#define USE_SPECULAR_CHEET
float SpecularBoost = 4.02;
#define USE_MATERIAL_SPHERE
#define USE_SPHERE_CHEET
float SphereBoost = 1.17;
float3 DefaultModeShadowColor = {0.1,0.1,0.1};
#define USE_MIPMAP
#define FX_MAX_ANISOTROPY 16
#define MAX_ANISOTROPY 16
#include "AlternativeFull.fxsub"
---(これより上の内容をコピーし貼り付ける)---
最も濃い影色はよく使うのですが
なぜかと言うと今はMMDで素材を
作成して画像編集ソフトで合成を
行う画像の作り方なので合成時に
調整しやすいように先に濃いめに
作っておくんですね。
(画像編集ソフトでの影色調整の例)
濃さが足りない時は乗算合成を重ね
がけとかもやります。
③中間影色(髪の毛や衣装向き)
---(これより下の内容をコピーし貼り付ける)---
/* ------------------------------------------------------------
* AlternativeFull
* ------------------------------------------------------------ */
#define TEXTURE_THRESHOLD "shading_hint_katturi2.png"
#define USE_MATERIAL_TEXTURE
#define USE_SELFSHADOW_MODE
#define USE_NONE_SELFSHADOW_MODE
#define USE_SOFT_SHADOW
float SoftShadowParam = 10;
float SelfShadowPower = 0.05;
#define USE_SHADOWCOLOR_SELFPOWER_MODE
float SelfPowerShadowStrength = 0.5;
#define USE_MATERIAL_SPECULAR
#define USE_SPECULAR_CHEET
float SpecularBoost = 4.02;
#define USE_MATERIAL_SPHERE
#define USE_SPHERE_CHEET
float SphereBoost = 1.17;
float3 DefaultModeShadowColor = {0.5,0.5,0.5};
#define USE_MIPMAP
#define FX_MAX_ANISOTROPY 16
#define MAX_ANISOTROPY 16
#include "AlternativeFull.fxsub"
---(これより上の内容をコピーし貼り付ける)---
今回紹介したおまけ①から③を適用
するとMMDではこうなります。
(「影用トゥーンシェーダー」適用イメージ)
MMDモデルさんによっては見え方は
異なってくるかと思いますが、だいたい
の濃さはこんなカンジです。