モーションの軸対称ペースト機能について

左右対称のモーションの作成などに、役に立つように、
任意の軸に対して、対称になるように、姿勢情報をペーストする機能が付きました。

軸対称ペースト機能を使うためには、
決まりに従って、ジョイントの名前を付ける必要があります。

まず、その決まりを説明します。


ジョイントの名前の付け方

名前の付け方は、どの軸に関して、対称なモーションを作るかによって、異なります。
X軸に関して、対称なモーションを作る場合には、

片方のジョイントの名前に、
(任意の名前)_X+
という名前を付け、
対応するもう片方のジョイントの名前に、
(任意の名前)_X-
という名前を付けます。
任意の名前の部分には、両方に共通の名前を付けてください。

ここでいう、X軸に対称とは、原点を通り、X軸に垂直な平面に関して、対称である、という意味です。

同様に、Y軸、Z軸に関して対称なモーションを作りたい場合には、
ジョイントの名前を、
 (任意の名前)_Y+ と  (任意の名前)_Y-
あるいは、 
 (任意の名前)_Z+ と  (任意の名前)_Z-

のように付けます。
アンダーバーより後の文字は、半角である必要があります。(アンダーバーも半角です)
+と-は、対になっていればよいので、座標値の符号に合わせる必要は、ありません。


軸対称ペーストでは、_X+と_X-、_Y+と_Y-、_Z+と_Z-が、
それぞれの軸に対して、対称となるように姿勢情報を変換して、ペーストします。



ver1.0.2.1での追加点

対応する対称ジョイントが存在しない場合でも、軸対称の姿勢をペーストすべきケースがありました。
(体の中心部の腰や、胴のねじれなど。)    
これらのケースに対応するために、規則を追加しました。

軸対称ペーストをしたい、体の中心部などのジョイントの名前には、
(任意の名前)_X
(任意の名前)_Y
(任意の名前)_Z
の形式で、名前を付けてください。
アンダーバーと、X,Y,Zは、半角で書いてください。

軸対称ペースト時に、自分自身の姿勢を対称変換した姿勢が、ペーストされるようになります。




それでは、実際の例を見てみましょう。



軸対称ペースト機能の使用例

ここでは、X軸に関して、対称なモーションを作る例を、説明します。

まず、名前の付け方の規則に従って、
ジョイントに名前を付けます。

このとき、階層構造エディタは、下図のようになります。



ジョイント1_X+ と、ジョイント1_X- がX軸対称の姿勢を持つことになります。
同様に、ジョイント2_X+ と、ジョイント2_X-や、
ジョイント3_X+ と、ジョイント3_X- も、対称な姿勢を持つことになります。

次に、このモデルデータに、IKで、適当にポーズを作ります。
下の図のようになります。



このポーズは、フレーム番号0に作りました。

このポーズのX軸対称のポーズを、フレーム番号10に作ることにしましょう。
まず、モーションダイアログの、フレームコピーボタンを押して、姿勢をコピーします。
この際、_X+ と、_X- の両方のジョイントの姿勢をコピーするようにしてください。
片方だけコピーしても、対称ペーストは出来ません。
例えば、この例では、”全体移動”ボーンを、コピーするボーンツリーに指定して、コピーを行ってください。

次に、モーションダイアログで、フレーム番号を10に移動します。
そして、フレームペーストボタンを押してください。
ペーストするボーンの名前の確認ダイアログが出てきた後に、
対称ペーストをするかどうか、選択するダイアログが出てきます。



このダイアログで、”名前の規則に従って、軸対称ペーストをする”を選択してください。

すると、フレーム10のポーズは、下図のように変化します。




フレーム0のポーズをX軸に対して対称にしたポーズが、フレーム10に出来ました。


ジョイント1_X+ などの名前を付けても、
コピーしたボーンツリーの中に、ジョイント1_X- という名前が含まれていない場合は、
対称変換は、行われず、そのままの姿勢がペーストされますので、注意してください。

自分自身の姿勢を対称変換して、ペーストしたい場合には、+, - なしの_X, _Y,. _Zの付いた名前を使用してください。
この方法は、体の中心部分の、腰や、胴のジョイントに使うと便利です。

例えば、
全体移動というジョイントの名前を、全体移動_X という名前に変えれば、
全体移動ジョイントの姿勢も、軸対称変換されるようになります。(ver1.0.2.1以降)



補間法についての注意点

以上で、対称ペーストの説明は終わりですが、
ちょっと、注意してもらいたい点があります。

上で説明した例のように、フレーム0とフレーム10に対称なポーズを作成した場合、
その間のフレームのポーズが、うまく補間出来ない場合があります。
フレーム0とフレーム10のポーズが、あまりにも、大きく、変化している場合に、うまく補間出来ません。
これは、モーションのスプライン補間が、大きな角度に対応していないために、おこります。

ですが、解決策はあります。
まず、モーションダイアログの”設定”ボタンを押して、設定ダイアログを出してください。
設定ダイアログの、”モーションの補間法”のラジオボタンを、
”球面線形補間”に設定してください。

その後、フレーム番号を5などの値にしてから、
そこにモーションポイントを作ります。
モーションポイントを作るには、
メインウインドウ上で、どれでも良いので、一つボーンをクリックします。

フレームを小分けにした後で、
再び、設定ダイアログを出して、
モーションの補間法を、”スプライン補間”に戻してください。

この方法で、急激に変化するポーズの間の補間も、うまくいきます。


RokDeBone2のトップページに戻る