Skip to content
miu edited this page Sep 8, 2021 · 26 revisions

VMDサイジング ver5.01

【概要】

MMDモーションデータ(以下、調整VMD)を、モーション作成時のモデル(以下、作成元モデル)から指定されたモデル(以下、変換先モデル)に適切なサイズに調整し、新しいVMDファイルを生成するMMD補助ツールです。

【お願い】

VMDサイジングは、元モデルそのものでなくても、似た身長・体型のモデルさんでサイジング可能です。

トレーサー様始めとする各権利者様のご迷惑となる行為はご遠慮下さい。


配布動画(シリーズ)

VMDサイジング・モーションサポーター: https://www.nicovideo.jp/series/87033

配布URL

BowRoll(64bit): https://bowlroll.net/file/197410

動作環境

Windows8.1/10 64bit(確認はWindows10のみ)


機能概要

サイジング基本機能

何もオプションを付けずにサイジングした場合に行われる処理です。

縮尺補正

元モデルを先モデルの縮尺に合わせて、移動系ボーンの位置を調整します。

(全ての親、センター、グルーブ、足IK親、足IK、つま先IK)

複数人数モーション対応

「複数」タブでファイルセット(VMD・元モデル・先モデルのセット)を追加する事で、複数人数モーションを一括でサイジング可能です。

複数人数モーションを一括でサイジングした場合、全員の移動系縮尺比率が統一され、フォーメーションを崩しません。

また、位置合わせやカメラなども複数人数に対応しています。

腕スタンス補正

元モデルの腕の角度と先モデルの腕の角度を合わせます。

ただし、元か先に腕IKが含まれている場合、「腕」タブのチェックスキップチェックボックスがOFFのままだと補正しません。

(スキップチェックボックスがONだと強制補正可)

腕IKの扱い

腕IKは、腕の向きを補助したり、服を補助するなど、モデルによって用途や構造が異なる為、機械的な判断が出来ません。

そのため、「腕IK・うでIK・腕IK・うでIK」を含むモデルはサイジングとしては対象外としています。

モデルによっては、そのままサイジングしても問題ない場合も多いので、ひとまずチェックスキップしてみてダメだったら諦めるくらいでも良いと思います。

元モーションの対象拡張子

  • VMDファイル(モーション)
  • VPDファイル(ポーズ)

また、ファイル名の部分をアスタリスク(*)に置き換えると、指定したフォルダ内の合致する全ファイルを一括で処理可能です。

アスタリスク可なのは、「ファイル」タブの調整対象モーションVMD/VPD欄のみです。

元モデル、先モデルは一体ずつしか指定できません。(全部同じ組み合わせでモーションだけ切り替える感じ)

出力ファイルはVMDオンリーです。


スタンス追加補正

「ファイル」タブもしくは「複数」タブの「スタンス追加補正」チェックボックスをONにする事で行われる処理です。

「スタンス追加補正」チェックボックスの横の「*」ボタンで、スタンス追加補正を取捨選択することが可能です。

センターXZスタンス補正

重心(センター位置)を元モデルに合わせて調整します。

特にバレエのターン等、体幹が伸びてる状態での回転で効果が分かりやすいです。

上半身補正

頭の位置が元モデルと同じ位置になるよう、上半身と上半身2(あれば)を調整します。

身体を反らしたり、屈んだりするモーションで効果が分かりやすいです。

準標準までのボーンで構成された四つ足モデルなどは直立します。

下半身補正

足の中間の位置が元モデルと同じ位置になるよう、下半身を調整します。

準標準までのボーンで構成された四つ足モデルなどは直立します。

つま先IK補正

つま先IKの移動量を、足IKの回転量に変換します。

ねんどろ体型等、小さいモデルで効果が分かりやすいです。

足IK補正

足ボーンから見た足IKの位置が元モデルと同じ位置になるよう、足IKを調整します。

ねんどろ体型等、小さいモデルで効果が分かりやすいです。

つま先補正

床からのつま先の距離を、元モデルと同じような位置に合わせます。

足先EXも考慮済み(つま先IKはちょっと苦手…)です。

肩補正

初期スタンスの肩の傾きの違いを考慮して、元モデルと同じくらいに動かすよう、肩と肩P(あれば)を調整します。

肩が大きく動くモーションがダイナミックになります。

センターY補正

床からの腕の距離を、元モデルと同じような位置に合わせるよう、センターを調整します。

ver4.xxまでの床位置合わせの一部です。

捩り分散補正

「ファイル」タブもしくは「複数」タブの「捩り分散あり」チェックボックスをONにする事で行われる処理です。

  • 腕捩り … 腕X、ひじXの捩り分を適用
  • 手捩り … 手首Xの捩り分を適用

既に捩りが入っていても、それを考慮した上で分散処理を行います。

ただし、捩りの性質上、変位点を見つけて、変位点キーフレ単位で処理してる、という処理を行ってるので、時間がかかります。


モーフ置換

元モーションの任意のモーフを、変換先モデルにある任意のモーフへと置換できます。

モーフの大きさも補正できます。

ファイルセット単位にモーフを指定できます。

A→B、B→Cを一気に指定された場合、BにはA+Bの補正値が、CにはBの補正値が入ります。

腕系処理

接触回避と位置合わせの両方を処理可能(接触回避→位置合わせの順に処理)です。

腕スタンス補正と同じく、腕IKが入ってると処理が行われないので、処理させたい場合にはチェックスキップオプションをONにしてください。

接触回避で剛体選択処理を入れるため、タブ移動時、モデル読み込み処理が実行されます。

接触回避

指定されたボーン追従剛体と手が衝突してる場合、回避します。

必要に応じて、PMXエディタで好きな箇所にボーン追従剛体を付けると簡単です。(PmxView>編集>選択ボーン>基礎剛体の作成 - ボーン追従剛体)

手の判定先は、人指先、手首、手首とひじの中間、ひじ、腕とひじの中間、の5ヶ所です。

位置合わせ

手首(もしくは指)の位置を、元モデルの位置に合わせます。

複数人数モーションの場合、他人との位置合わせも行います。身長差は適当に補間しています。

指位置合わせ

手首だけでなく指位置でも位置合わせを行います。

複数人数モーションの場合、時間がかかる割に綺麗にならないので警告が出ます。

床位置合わせ

手首同士だけでなく、床位置との位置合わせも行います。


カメラ処理

元モデルと同じ映り具合になるよう、カメラを同時に調整します。

複数人数モーションの場合、ピンで映ってる場合は身長差も補間します。

ただし、身長差が大きくて、かつ、多人数が映ってる場合、若干ズレます。その場合、視野角を少し調整すると合う場合が多いです。

ファイルセット単位で、カメラ元モデル(カメラ作成時に使用されたモデル)を指定可能です。


一括サイジング機能

「一括」タブで、CSVを指定する事で、複数のサイジングを一括で行う事ができます。

具体的な値は「一括サイジングサンプル.csv」をご確認ください。

ヘッダの一行目は読み飛ばします。


おまけ機能

CSV出力

指定されたVMDモーションデータをCSV形式で出力します。

ボーン・モーフ・カメラ別々のフォーマットとなっています。

補間曲線も全て出力します。

VMD出力

指定されたCSVデータ(CSV出力機能のフォーマット準拠)をVMDモーションデータとして出力します。

補間曲線も全て出力します。


【注意点】

  • 元々のモーションから動きが変わる事がありますので、自己責任でお願いします。
  • 各モーション、モデルの規約を必ずご確認ください。