皆さん、MMDマクロ使ってますか?
いろいろ便利なMMDマクロですが、
表示枠からボーン選択することができないと思っていたけど実はできました。
というわけでピンポイントにそれだけのまとめ。
;未登録ボーンの登録
click(bone_sel_unreg)
;ボーン登録を押す
click(bone_reg)
;未登録を押して選択を外す
click(bone_sel_unreg)
;vpdを読み込む
menu(1, 9)
;ダイアログ開始確認
dialogOpen(ポーズデータ読込)
dialogSetStr(Edit1,右足IK初期化.vpd)
;開くボタン押下
dialogClick(Button1)
;ダイアログを閉じて終了確認
dialogClose()
;アンドゥしてポーズをキャンセルする
click(undo)
;コピペでボーンの数値を表示する
click(bone_copy)
click(bone_paste)
命令としてはこういう感じになります。
ボーン1つだけのポーズを記録したvpdを読み込むことでボーンを選択するわけ。
その前後にどういう意味があるかが以下説明です。
まず「未登録選」を押して現在選択しているボーン選択を外します。
その前にボーン登録を押しておくことで未登録ボーンをなくしておきます。
次にメニューからvpdの読み込み。
vpdは選択するボーン1つだけの情報にします。
選択に使うだけなのでポーズはどうでもいいのですが、
初期化するvpdを作っておくのが汎用性高そうです。
vpdはMMDの「UserFile」内の「Pose」フォルダに入れておきます。
メニューからの読み込みなので UserFile/Pose/ 以降のフォルダしか指定できません。
「デフォルトフォルダを前回位置~」にチェックが入ってると読み込めなくなるので要注意。
vpdを読み込んだ後に「やり直し」を押してポーズをキャンセルします。
vpdを読み込みで姿勢が変わらなくてもvpd読み込み動作がアンドゥ対象になります。
その後にボーン操作の「コピー」「ペースト」を続けて押します。
意味のない動作に見えますが、これをすることでボーン入力欄に数値が表示されます。
それをしないとボーン位置 X 「-----」みたいになってしまって、
マクロ側からボーンの入力数値を取得して扱うことができなくなります。
(ボーンが選択できているけど入力数値が表示されていない例)
以上、MMDマクロでボーン選択する方法でしたが、
マクロでボーン選択して何をするのかはその人次第ですのでまあ・・・
連続操作する時に足IKの回転だけゼロ化するとかそういう感じかなあ