2018/10/25

リファレンスのデフォーム

mayaの話。

リファレンスしたオブジェクトにデフォーマかけると"~Deformed"て名前になって、alembic出力した時に名前がマッチしなくて困ったのでメモ。

単純な話だと、Deformedを名前から消してリネームすれば良い。

根本から解決するには元シーンのShapeノードのoutMeshから何かしらに接続しておけば回避できる。
polyUniteを使うとアウトライナも汚れず便利。
polyUniteノードのNodeStateをHasNoEffectにして計算を切っておけば動作が重くなることもないらしい。

どっちにしてもなんか不便だなぁ・・・。

2015/07/23

MAXscript リセットオールトランスフォーム的な

SIでいう「Ctrl+Shift+R」
リセットオールトランスフォームが欲しかっただけなのです。
標準機能で無さそうだったのではぢめてのMAXscriptとなりました。

こんな感じ
oSel = selection.count;

if oSel == 0 then (
    print "何も選択されていません";
)else if val == 1 then (
    in coordsys parent $.pos = [0,0,0]
 in coordsys parent $.scale = [1,1,1]
 in coordsys parent $.rotation = (quat 0 0 0 0)
)else(
 in coordsys parent $selection.pos = [0,0,0]
 in coordsys parent $selection.scale = [1,1,1]
 in coordsys parent $selection.rotation = (quat 0 0 0 0)
)

何とか動いてるっぽいからとりあえずコレでいいや(´・ω・`)
こいつをショートカット登録したかったのでマクロスクリプトとやらにして

macroScript Reset_Transform
category:"My_Tools"
toolTip:"Reset_Transform"
(
 oSel = selection.count;
 
 if oSel == 0 then (
  print "何も選択されていません";
 )else if val == 1 then (
  in coordsys parent $.pos = [0,0,0]
  in coordsys parent $.scale = [1,1,1]
  in coordsys parent $.rotation = (quat 0 0 0 0)
 )else(
  in coordsys parent $selection.pos = [0,0,0]
  in coordsys parent $selection.scale = [1,1,1]
  in coordsys parent $selection.rotation = (quat 0 0 0 0)
 )

)

ひとまず完成。
 

2015/06/08

Maya 選択しているオブジェクトのアニメーションオフセット

ググったけどそんな感じのmelさん見当たらなかったので、
コピペして勘で弄ったらとりあえず動いたのでメモ。
時間ないからとりあえず動けば良い。後でちゃんと調べて汎用性高くしたいが。。

string $obj[] = `ls -sl`;
string $attrList[] = `listConnections -s 1 -type "animCurve" $obj`;

selectKey -add -k $attrList ;
keyframe -animation keys -option over -relative -timeChange (0 + 10) ;



-timeChangeのところにオフセットさせるフレーム数入れる。