MMDで使える影表現を探して前回(10/21)
記事では『斜線影』を[シャドウが落ちたところ
にのみ絵をマップするエフェクト](Caeru様)
ShadowOnlyMap.xを使ってみました。
-ShadowOnlyMapの斜線影効果-
MMD標準影部分に描画する斜線パターンを
ペイントソフトで作成(背景色透明)するなりし
て用意すれば後はShadowOnlyMapの
image.pngと差し替えるだけで『斜線影』
効果が出せます。
『斜線影』の出方は「照明操作」XYZ値、
「セルフ影操作」モード2影範囲、「美影」
オン/オフ、モデルのアングルなどで調整
するコトが可能です。
ShadowOnlyMapでうまくいったので
他のMMDエフェクトで『斜線影』が作れな
いか今回は[色々できそうなシェーダー]
AlternativeFull(less様)でテストしました。
<<AlternativeFullで『斜線影』作成>>
<準備するもの>
・ハイライト/陰影用画像
-shading_hint_imas2.png改変版-
AlternativeFullフォルダに同梱されて
いるshading_hint_imas2.pngを
編集して 陰影部分に斜線を入れて
みましたがこれでちゃんと『斜線影』
になるのでしょうか。
<AlternativeFullFrontend.exe>
→[色々できそうなシェーダー]AlternativeFull
の設定画面をキャプチャしてあります。
-パラメータ図解-
今回の目的である『斜線影』を出す為に
"シェーディング3"タブの[法線マップ]で
法線テクスチャ画像を指定しました。
-法線テクスチャ画像-
昨日使用したShadowOnlyMap用
斜線パターンをそのまま流用してます。
AlternativeFullFrontendでfx出力
ボタンを押して作成したエフェクトFX
ファイルの記述(34行)は以下の通り。
_________________________________
/* ------------------------------------------------------------
* AlternativeFull
* ------------------------------------------------------------ */
/* created by AlternativeFullFrontend. */
#define TEXTURE_THRESHOLD "shading_hint_imas2-ps.png"
#define USE_MATERIAL_TEXTURE
#define USE_NORMALMAP
#define TEXTURE_NORMALMAP "image.png"
float NormalMapResolution = 3.14;
#define USE_PARALLAXMAP
float ParallaxHeightRate = 0.0383161;
#define USE_SELFSHADOW_MODE
#define USE_NONE_SELFSHADOW_MODE
#define USE_RIM_LIGHT
float RimLightPower = 1.12;
float RimLightThreshold = 0.12;
#define USE_HIGHLIGHT_CHEET
float HighlightPower = 0.1;
float SelfShadowPower = 1;
#define USE_SHADOWCOLOR_SELFPOWER_MODE
float SelfPowerShadowStrength = 3;
#define USE_MATERIAL_SPECULAR
#define USE_SPECULAR_CHEET
float SpecularBoost = 1.68;
#define USE_MATERIAL_SPHERE
#define USE_SPHERE_CHEET
float SphereBoost = 0.45;
float3 DefaultModeShadowColor = {0,0,0};
#define USE_MIPMAP
#define FX_MAX_ANISOTROPY 16
#define MAX_ANISOTROPY 16
#include "AlternativeFull.fxsub"
_______________________
記述の太字部分が法線マップ関連の
パラメータです。
任意の名前をつけてfx出力した
エフェクトFXファイルはMMD画面
右上の[MMEffect]ボタンを押して
「エフェクトファイル割り当て」ウインドウ
MainタブでPMXモデルを選んだ状態
で「ファイル選択」ボタンでエフェクト
FXファイルを 読み込むと適用されます。
これで表示がどうなったかMMD画面を
確認しましょう。
-MMD画面で『斜線影』の確認-
同じ斜線パターンを使用してもShadowOnly
Mapより細い線になってますね。
よく見ると影部分だけでなくハイライト部分
にも白で線描されてるのが分かります。
-MMD画像例-
影色が薄いので近付いて見ないと気付かない
かもしれません。
こちらはShadowOnlyMapとの併用で
影色は少し色がついた形で材質色と
なじませました。
法線テクスチャの『斜線影』はモデル
形状に合わせてカーブがつきますが
これはこれで表現としてはありかなと
思います。