見出し画像

ランドMMD備忘録

はじめに

本日(2023/11/17)に投稿したエフェクト・マテリアルテストのMMD動画の備忘録です。剛体とjointしかいじってませんが改変も少し。
サムネにでかでかと動画で使用したサムネ使ってますが動画のことは触れません。

備忘録の為、全体的に解説じみたものはありません
軸にray-mmdを使用したものですが、rayはMaterialsフォルダのEditorの改変だとかが既にわかる人にしかわからない書き方しかしませんし、rayを導入するところから書いたり、改変の仕方を書いたりはしません。
マテリアルの範囲の内容理解はray中~上級者以上向けかと思われます。

エフェクトは今回初めて使ったエフェクトと、知識を深めれたエフェクトについてまとめています。
同じく導入解説などはありません。

使用されている画像/GIFなどは、すべて使用/転載など禁止です。


【Wavebox】
絵文字だけでも置いて行ってくださると喜びます…
ご感想もいつでも…質問はMMDやnoteのことでしたらお答えできます……


クレジット(敬称略)

【モデル】
・星穹铁道 - 布洛妮娅(以下、ブローニャ): miHoYo/神帝宇

【マテリアル/エフェクト】(記事で取り上げたもの)
・ndFigureShader:のらびと
・msToonCoordinator:ましまし
・PostDropHair:P.I.P
・PostAlphaEye:そぼろ
・ikBokeh:ikeno

【その他】
動画本編参照


モデル改変

今回はMMD内での備忘録が主軸なので改変の話は文面だけでサラッとまとめます。

特に目立ったのは「前髪」「ピアス」「袖から伸びている布」「スカートetc」だったので剛体とjointの値をそれぞれいじっています。
また、すべての知識においてなんとなく、なのと手当たり次第やってるので、要らないところまで変更/追加してる可能性があります。
ウェイトだとか破綻防止モーフだとかはまだ理解していない。

【前髪】
左右で比べた時に左側の顔横の髪が重力に負けていた(左右でjointの数値が違ってた)ためその調節と、前髪~横髪が全体的に揺れた時に顔に貫通してしまうのを防ぐために、その範囲の根本の方の剛体を「物理+ボーン位置合わせ」にした上でjointの数値を0に変更。

【ピアス】
回転する動きをした時などにピアスが全部ぶっ飛んでくので、それも剛体とjointで調節。
どういう調節かの中身は前髪とそんなに変わらないです。

【袖から伸びてる布】
左右それぞれで、種類は違えど袖の所から伸びてる布も、腕を動かしたときに伸びるわ貫通するわだったので、剛体のサイズ調節と「物理+ボーン位置合わせ」に変えてjointで調節。
質量はなるべく変えたくなかったので(挙動が変わるので)、剛体タイプとjointで調節しました。

【スカートetc】
※この辺はスカートと脚回りをまとめて改変したので記載もまとめています

脚と脚の飾りがスカートと貫通するため、全体的に剛体のサイズを上げたのと、足とスカート避け用(気休め)の剛体を追加。
この剛体のおかげで脚がスカートに貫通した後、そのまま貫通した状態で引きずることはないと思う…

どうしても無理な範囲は別途スカート避けの剛体を作ってモーションに合わせて調節したものの、無理な所は無理でした。
脚の付け根の方がわからなすぎる。どうすればよかったんだ。


ray-mmd数値

マテリアルは主にのらびと様配布のndFigureShaderのマテリアルマップをrayのEditorファイルのmaterial_cloth__○.fxを改変して読み込ませて調節しています。
個人的にタイツがめちゃくちゃ天才的に作れたと思っています。

←before|after→

Mainファイルもいじりましたがスフィアを適用させただけなので割愛。

ライティングなども細かい値は今回は割愛しています。自分でもよくわかってない。
照明操作で逆光にして、ray_controllerでSunLight-を1.000にして、DirectionalLightで順光にして、SpotLightでさらに後ろから照らした後、ray_controllerの他の項目お好みで調節するだけ。
でも今回はaviutlで色味ごまかしたりはしてない。単色化薄くかけはしたけどそれ以外はまま。


【タイツ】(NM-Fabric01)
AlbedoH:0.070
AlbedoS:0.030
AlbedoV:0.050
NormalLoops:0.700
Smoothness:0.500

【スカート以外の青布】(NM-Fabric01)
NormalLoops:0.700
Smoothness:0.100

【服(上)】(_NM_Figure)
NormalLoops:0.720
Smoothness:0.600

【服(下)】(Velvet_pxr128_normal)
SpecularV+:0.160
CustomA:1.000
NormalLoops:0.700
Smoothness:0.650

【袖リボン】(Herringbone_pxr128_normal)
SpecularV-:1.000
NormalLoops:0.850


エフェクト

【PostDropHair】
個人的に色の調節がしやすいという理由でmsTCとPostDropHairを併用しています。
値はお好み。
前髪にパキッとした影が入るだけで大分印象が変わる。

PostDropHair用に使うだけだったら多分ExcellentShadow使わなくていい。
導入後、msToonCoordinatorControllerの[影1しきい値]を0.600以上に上げれば出てきます(多分)

こちらを参照しております。


【PostAlphaEye】
折角の顔アップが前髪で隠れてしまってもったいなかったのと、スタレだからという理由で入れてみました。

スタレのこの処理にとても感動した。

(この時は角度だけで減衰してると思ってましたが、少し後に「角度+目と髪との距離」で減衰したりしてることが分かりました。
なのでセンターに太めの束で前髪があるとわかりやすいのですが、回転させたときに奥にある目の方が早く減衰します。細かいね……)

「前髪だけ」というパーツで分離作業をしていないのもありますが、動画本編でも一応角度で透け具合が減衰してたりします。
ゲーム内よりはずっとカバー範囲は広いので分かりにくいですけど……
できるかわからないけど、それ用に材質分離した後、左右の目で適用するファイル分ければ似たようなことできるんじゃあなかろうか…と思ってます。


【ikBokeh】
これは前から使ってた(アニマルmmdとラッシャイナmmd)ものですが、個人的に悩みだったモデルとぼかしとの間に境界線(ぼかされないところ)ができてしまう問題が解決したのでまとめておきます。

結果的に言うとエッジの問題だったのですが、この部分があるのとないのではクオリティが大分変ります。

アニマルmmd

rayを入れるとモデルにあるエッジが消えて見えると思うのですが、それが判定的には残っていたため、ikBokehを入れた時に境界線として反映されてしまったようです。(多分そういうこと)

msTCを入れた時に、msTCのエッジとikBokehを入れる事で起きた境界線の形がピッタリだったので、気付きました。
(ちゃんとMMDの知識ある方だったらもっと早く気付いてたんだろうか……)
PmxEditorでモデルのエッジを無効にしたらなくなりました。


おわりに

以上です。
あまり優しくない記事でしたが、ご容赦ください。
今後のMMDにも今回試したエフェクト追加して作っていこうかと思ってます。
rayのEditorファイルからマテリアル張るのは、「どれにどの番号の.fx読み込ませたのか」「この.fxになんのマテリアルマップ読み込んでいたか」などのファイル管理が慣れませんがやってく内に良いの思いつくでしょう(きっと)

シーリンMMDの記事で「次回はヒミツ(虚三家)MMD」みたいなこと言いましたがそっちよりもこっちが先に来てしまった。
都合により、虚三家MMDの記事は12月~1月になるかと思われます。

それでは。