D日記

ゲーム開発者っぽい記事とか。生活の記事とか。生きていくって大変ですね!

MENU

【MEL】ヤバみある回転補完を修正する

Mayaでモーションを作る時は基本的にオイラー回転を使うと思います。

リグに回転リミットがかかっていない場合、ついうっかり腕を回転させ過ぎちゃうことってありません?
 → たとえば、回転Xが0度から720度に回転してたりとか。

そういう時に皆さんどのような対処をされますか(^_^)?

左は最短補完されている状態、右はカーブが暴れている状態
右側やばすぎでしょww
f:id:ponta565:20180412205516g:plain f:id:ponta565:20180412205536g:plain

なにわろてんねん

対処法1 グラフエディターで値を修正

画像では、0Fから20Fの間に360以上の値の変化が挟まれているので、これを元に戻してあげる。
「-=360」などの書き方をすると、相対的に値を一括で変更できますよ(^_^)
f:id:ponta565:20180412210156p:plain

対処法2 一度クォータニオンにして再度オイラーに戻す

カーブを選択して、
カーブ > 回転補完の変更 > クォータニオンキュービック
にしてから、再度独立オイラーに戻します。
youtu.be

ただ注意点として、この方法は接線の角度が死んじゃいますので、
接線の角度が重要なモーションだと使わないほうがいいかもです。




と2つご紹介しました。このくらいの方法しか思いつきませんでした\(^o^)/

とりあえず、今回は「対処法2」の方をMEL化しました。
ホントは接線の値も保持して復活させろよって話なんですが・・・
いつか!・・やります!(やるとはいってない)

ちゃんとやれよ

ヤバみあるオイラー回転補完を修正するMEL(未成熟)


なんでPythonじゃなくてMEL??って思われた方もいるでしょう。
そう、MayaLTではPythonが使えないのです。