Quantcast
Channel: ポリめりMMD
Viewing all articles
Browse latest Browse all 1308

MMEffect コード編集でグレースケールシェーダーを作る (full.fx改変版)

$
0
0

MMDのエフェクトMMEffectについてもっと

よく知る為にサンプルエフェクトのプログラ

ムコード編集でグレースケールシェーダーを

作ってみました。


サンプルエフェクトはセルフ影機能に対応

してないので普段使い出来るようにエフェ

クトベースであるfull.fxファイルを使用して

グレースケールシェーダーを作成します。





(過去記事)




~MMD エフェクトファイルのカンタンな書き換えで

グレースケール化してみる~(2015/05/28)





(シェーダコードの編集方法解説ページ)



「MikuMikuEffect」のエフェクトファイルの内部構成とシェーダコードの編集方法

MikuMikuEffectで学ぶHLSL入門(3)

舞力介入P [著]



http://codezine.jp/article/detail/6122?p=4


→MikuMikuEffect制作者様の解説文が載ってます。








(full.fxファイル紹介ページ)



VPVP wiki  MME用エフェクト


シェーダー(陰)



http://www6.atwiki.jp/vpvpwiki/pages/272.html


→エフェクトfull.fxファイルはMMD標準とほぼ同じ

 シェーダーでエフェクト作成のベースとしてよく
 
 使われています。









(MMD画面)






シェーダコード編集fullgrayscale508-2.png




上の画像のモデルにグレースケールシェーダーを

適用してみます。



上の画像は昨日の記事~MMEffect モデルを

肌質感良く高画質にする為の方法~で使った画像

ですが、使用エフェクトの数を減らす事が出来ました。


それほど必要ではないエフェクトを削除してXファイル

エフェクト25のうち4つ外して21にしてます。

(外したエフェクトはM4Layer、DropShadow、

MipGaussian、HgDiffusionです。)



MMDでモデルにグレースケールシェーダーを適用

するとこのようになります。




(グレースケールシェーダー適用)




シェーダコード編集fullgrayscale508-3.png




MMD画面右上のMMEffectメニューエフェクトファイル

割り当てでモデルを右クリックメニューでサブセット展開

してからエフェクト解除ExcludeMapタブにグレースケー

ルシェーダーfullgrayscale.fxをジャケットや髪の毛など

材質毎に読み込みました。


グレースケールシェーダーはモデル色をグレーに塗り

つぶすのではなくモデル色をRGB平均化して表示します。

シェーダーのプログラムコードは以下のようになります。





(full.fxファイル改変版)




シェーダコード編集fullgrayscale508-4.png




full.fxファイルを開いて//スペキュラ適用となっている

ところに411行目と412行目にグレースケール化記述を

追加で書き込むだけです。


(full.fxをそのまま残しておく為に改変したファイルは

fullgrayscale.fxと名前を付けて保存してます。)



float Gray = (Color.r + Color.g + Color.b ) / 3; //この行を追加
Color.rgb = float3(Gray, Gray, Gray); //同上



コード記述部分を見るとRGB色を3で割って平均化した

色を適用する内容になってる事が分かります。


このコード記述の3で割る指定を少し変えてみると

どうなるか試してみます。




(2.5で割った場合)




シェーダコード編集fullgrayscale508-5.png




3つの色を3で割って均等化するところを2.5で割ったら

表示色が薄くなりました。

ちなみに2.5を3より大きな数値にするとより暗い色に

なります。


RGBそれぞれの数値が同じである限りはグレー色

なので割る数値でグレーの濃淡を調整可能という事

ですね。



MMDで実際に使用する場合はもう少し薄くして

色調補正的に使うのでシェーダー側ではなくExcludeの

アクセサリ操作で調整します。




(仕上げの調整)





シェーダコード編集fullgrayscale508-6.png




髪の毛とジャケットに薄めにグレーを足したような

感じにしました。



full.fxファイルを改変して作ったグレースケール

シェーダーであればセルフ影表示ありでも使えます。


次回は光学迷彩エフェクトを作ってみる予定です。








〇   ポリめりminiコーナー   〇

記事の冒頭にも書きましたが、昨日の記事で使用した

MMDファイルのエフェクトを変更して幾つか画像を

作りました。




(なにか足りないカンジ)





シェーダコード編集さCircusカット用か髪の毛キューティクル初代本家03test1858-2.png




エフェクトファイル割り当てでヘッドホンを非表示に

して消しました。

首元がスッキリして見えますね。





Viewing all articles
Browse latest Browse all 1308

Trending Articles