T0R0のブロマガ
闇鍋プラグイン XYZ軸成分分解IKの作成機能追加
2013-10-20 10:05:23
闇鍋プラグイン(http://bowlroll.net/up/dl9765)にXYZ回転角それぞれを取り出すIKを作成する機能を追加しました。
艤装勝手に動くようにする構造作るのに結構必須のため作成。
(テストするためだけで作成するのはかなり手間なので)
XYZ軸成分分解IKの作成
[BONE] XYZ軸成分分解IKの作成
・CreateAxisComponentIK.dll
フォームで選択したボーンの軸成分分離IKを作成する。
使用条件としては初期ボーン向きがグローバル軸に沿っている事が条件です。
(いまのところ体幹のボーンで使用する事前提です。)
1.プラグイン選択
フォームでボーンを選択して(ここでは上半身を選択)
編集→プラグイン→User→BONE→[BONE] XYZ軸成分分解IKの作成
を選択しプラグインを実行します。

2.プラグイン実行
[編選択したボーン名]のX/Y/Z軸成分IKを作成しました。のメッセージが出れば作成完了です。

3.プラグイン実行結果
下図のようにX/Y/Z軸角度制限付きのIKが3つ作成されます。

ループ:3
単位角:3π
角度制限:各角度-179~179
で設定してありますので適当に修正してください。
☆IKの角度制限について
IKの角度制限はGlobal値で制限がかかります。Local軸ではないので思ったとおりに制御する為にはボーンの初期位置をグローバル軸に沿う位置に持っていく必要があります。
ここで作成したIKは角度制限の仕様を逆手にとってグローバルX/Y/Zの値を個別に取得するIK構造です。
通常の回転連動では全ての角度が連動してしまう為に必要のない連動まで渡ります。
IKの角度制限を利用することで不要な回転をある程度排除して動作させることが可能です。
以上です。
この記事のコメント欄は以下の記事通り解放します。
http://ch.nicovideo.jp/t0r0/blomaga/ar760385
艤装勝手に動くようにする構造作るのに結構必須のため作成。
(テストするためだけで作成するのはかなり手間なので)
XYZ軸成分分解IKの作成
[BONE] XYZ軸成分分解IKの作成
・CreateAxisComponentIK.dll
フォームで選択したボーンの軸成分分離IKを作成する。
使用条件としては初期ボーン向きがグローバル軸に沿っている事が条件です。
(いまのところ体幹のボーンで使用する事前提です。)
1.プラグイン選択
フォームでボーンを選択して(ここでは上半身を選択)
編集→プラグイン→User→BONE→[BONE] XYZ軸成分分解IKの作成
を選択しプラグインを実行します。

2.プラグイン実行
[編選択したボーン名]のX/Y/Z軸成分IKを作成しました。のメッセージが出れば作成完了です。

3.プラグイン実行結果
下図のようにX/Y/Z軸角度制限付きのIKが3つ作成されます。

ループ:3
単位角:3π
角度制限:各角度-179~179
で設定してありますので適当に修正してください。
☆IKの角度制限について
IKの角度制限はGlobal値で制限がかかります。Local軸ではないので思ったとおりに制御する為にはボーンの初期位置をグローバル軸に沿う位置に持っていく必要があります。
ここで作成したIKは角度制限の仕様を逆手にとってグローバルX/Y/Zの値を個別に取得するIK構造です。
通常の回転連動では全ての角度が連動してしまう為に必要のない連動まで渡ります。
IKの角度制限を利用することで不要な回転をある程度排除して動作させることが可能です。
以上です。
この記事のコメント欄は以下の記事通り解放します。
http://ch.nicovideo.jp/t0r0/blomaga/ar760385