「ユーザーブロマガ」サービスの終了(10月7日を予定)にあたり、残したいユーザーブロマガ記事への投票を受け付けています

モデル追加検証プラグイン
閉じる
閉じる

モデル追加検証プラグイン

2015-09-19 17:18
  • 4

残したいユーザーブロマガ記事への投票はこちらです


■説明
PMXE 0232b以降で追加された「追加検証機能」を使いモデルの検証を行います。2016/05/04更新 ウェイトの正規化チェックの範囲値を調整
2016/05/15更新 IKLoop/Angle/TargetBone AppendBoneのチェック機能追加
2017/04/07更新 NullBoneな剛体を検索チェックする機能追加
2017/04/12更新 ボーン表示枠にモーフが登録されているかをチェックする機能追加


DLURL:https://bowlroll.net/file/81085

■内容物

・CheckModel.dll
プラグイン本体

・CheckModel.zip
CheckModel.dllのプロジェクト(ソースコード等)

・README.TXT

■使い方
☆PMXE0232b以上で使用できます。それ以外では使用できません。☆

PMXEのUserフォルダ直下に
 CheckModel.dll
をコピーしてください。

ファイル→PMXデータの状態検証で
-----------------------------------
Joint 不正値 : 0 | ... ○
Body 不正値 : 0 | ... ○
Bone 不正値 : 0 | ... ○
Material 不正値 : 0 | ... ○
Vertex 不正値 : 0 | ... ○
Root表示枠のチェック : 0 | ... ○
表示枠への隠しモーフ登録チェック : 0 | ... ○
表示Bone数制限 : -- | ... ○
Morph数制限 : -- | ... ○
-----------------------------------
等が以下の様に追加されていれば問題ありません。





検証内容
・Joint不正値
値にfloatとしての不正値の存在確認

・Body不正値
値にfloatとしての不正値の存在確認

・BodyのNullBoneチェック
構造的には正常だけどBodyがNullBoneになっていると準標準ボーンプラグインがエラーを吐くそうなので。

・Bone不正値

値にfloatとしての不正値の存在確認

・Material不正値

値にfloatとしての不正値の存在確認

・Vertex不正値
値にfloatとしての不正値の存在確認

・IKTaragetBoneIndexが正値であることの確認
・IKLoopが正値であることの確認
・IKAngleが正値であることの確認

・AppendBoneIndexが正値であることの確認

・Root表示枠のチェック
Root表示枠に複数登録の有無(先頭のものしかMMD上では表示されない為)

・ボーン表示枠へのモーフ登録チェック
ボーン表示枠にモーフが登録出来てしまうのでそのチェック

・表示枠への隠しモーフ登録チェック
表示枠に隠しモーフが登録していた場合MMDで落ちる場合があるのでそのチェック

・表示Bone数制限

MMDでボーン数が1621以上の場合pmmが正常に保存できなくなるのでそのチェック

・Morph数制限
モーフ数255制限のチェック

・ウェイト値の合計が1でない頂点
ウェイト値合計が1でない頂点をチェックする。

・ボーン名称の長さチェック
ボーン名称が15byteより大きいものをチェックする。

・モーフ名称の長さチェック
モーフ名称が15byteより大きいものをチェックする。

・ボーン表示枠要素の名称長さチェック
ボーン表示枠要素の名称が12byteより大きいものをチェックする。

・表情表示枠要素の名称長さチェック
表情表示枠要素の名称が12byteより大きいものをチェックする。

・MMMでの軸制限ボーン操作チェック
MMMでは軸制限ボーンは回転のみにして下さい。

・MMMでのIKボーン操作チェック
MMMではIKボーンは移動・回転のみにして下さい。

・テクスチャの名前チェック
PMD形式の場合は20byteまでにして下さい。PMX形式では問題ありません。

・PMD形式の頂点数最大値
PMD形式の場合は頂点数65535以下にして下さい。

・PMD形式の物理後設定
PMD形式の場合はボーンの物理後設定は無効です。

・PMD形式の付与親設定
PMD形式の場合はボーンの付与親設定は無効です。

・PMD形式のLocal軸設定
PMD形式の場合はボーンのLocal軸設定は無効です。

・PMD形式のボーン変形階層
PMD形式の場合はボーンの変形階層は全て0で動作する様にして下さい。

・PMD形式のボーン向き設定
PMD形式の場合はボーンの向き相対値は無効です。

・PMD形式の材質テクスチャ設定
PMD形式の場合は材質のテクスチャとスフィアの文字列合計は18文字以内です。

・PMD形式の材質スフィア拡張子設定
PMD形式の場合は材質のスフィアの拡張子はspa/sphです。

・PMD形式の材質両面描画設定
PMD形式の場合は材質の両面描画時のアルファは0.99です。

・PMD形式の材質セルフシャドウ設定
PMD形式の場合は材質のセルフシャドウ有効時のアルファは0.98です。

・PMD形式のモーフ設定
PMD形式の場合は頂点モーフ以外は無効です。




また、PMXE0.2.5.1以降では、状態検証で出てくるボーン/モーフなどのIndex番号を以下のようにクリックすることで該当のボーン/モーフを選択することができます。


■動作環境

PMXE 0.2.3.2b以上

PMXE 0.2.3.2b以上の機能を使用している為、古いPMDE/PMXEでは動作しません。

以上です。

この記事のコメント欄は以下の記事通り解放します
http://ch.nicovideo.jp/t0r0/blomaga/ar760385

広告
×
いつも使わせていただいています。ありがとうございます。

表示ミスのご報告(使用上特に問題はないのですが)
重複面の警告△メッセージが
「重複面数 : 512 | ... △ 単独(面非参照)頂点の修正が可能です.」
となり前半は重複面ですが後半の文が面非参照頂点の修正というメッセージになっています。
済みません。使い出してすぐに(0232bで)気づいたのですがご報告を忘れておりました。
pmxeditor 0232dで確認しました。

以下は希望です。
△の項目でウェイト値が1にならない頂点表示の際
BDEF2はウェイト正規化ですぐに直るのですがBDEF4の場合は直らないので
全部手で修正しています。結構大変です。
(ナイフ使用やハイポリ化プラグインの際に起こります。わざわざ直す人は殆ど居ないと思いますがw)
何か良い方法があればご教示下さい。
68ヶ月前
×
>>1
重複面のチェックはPMXE標準のチェック機能なので私の範疇外ですなwしたらばのPMXEスレに報告するといいと思います。
BDEF4の正規化は単純に行うとウェイトを割り振ったすべてのボーンのウェイト比率が変化しますのでおそらく望んだ変形状況にはならないと思います。近傍頂点とのウェイト値変化量をならすのは1ボーンのウェイト値を捨てる選択が必要になりますのでちょっとややこしいかなーと。
68ヶ月前
×
ご返答ありがとうございます。
重複面の表示の件 したらばのPMXEスレッドに報告することにします。
ウェイトの件、ナイフではなくてパイポリ化のBDEF2→BDEF4の場合ウェイトの割り振り自体は問題が有ったことはないのですが小数点以下8桁目以降がチェックに引っかかって警告△が出るみたいなのです。一度に300ぐらい出たので全部数値入力で直した時は疲れましたww(その時に上記状態のようだと解ったのですが)これもPMXEの機能なら同じくスレッドの方に相談してみることにします。
ありがとうございました。
68ヶ月前
×
追記 なぜほっといてもいい警告を消すかというと 今まで警告が一つでも残っていると別のエラーが表示されないという経験が有ったためです。(但し最近のPMXEでそうなるかは再確認していません。もしかしたらエラーの場合であって記憶違いかもしれないのですが) 半分は自分の趣味で警告を全部消すので好きでやってるというのが正しいと思います。
68ヶ月前
コメントを書く
コメントをするには、
ログインして下さい。