スクリプトに久々に手を出してみたよ
ポーズをコピーして貼り付けるっていうスクリプト
一回ずつポーズを吐き出して適用ってのがめんどくさかったので使い捨てで使えるお気軽なのが欲しかった、本当はスケマティックビュー用だったりするけど汎用になったので公開。
できたのは雛形でこれをプラグインとかにしたいんだけど、また調べてる時間があるときにしようかと思う。
とりあえずは回転にしか対応してない、移動で同様の文打ったら上手く動かないのよね・・・何なのでしょうか困った。
スケールはめったに使わないからとりあえずいらないかなと思って試してすらいないです。
■使い方
・pose_input
記憶したいオブジェクトを選択して実行、SRT持っていればなんでもいけると思います、たぶん。
選択しているオブジェクトの、現在のフレームのポーズを格納します。
・pose_output
pose_inputを実行してから、ぽっちと押すだけ
pose_inputで記憶したものを呼び出してキーを打ちます、それだけ。
-----------------------------------------------------------------
あとは誰か勝手に改造してプラグイン化とかにしてくd
今回はSet/GetGlobalを教えて貰ったのでその辺で作ってみたけど、カスタムパラメーターでも作れるっぽいのでそちらも試してみたいな。
Set/GetGlobaについはJunkiさんのブログのこの記事を見るといいと思います。
一個オブジェクト置いてあとはインスタンスでバーって並べて作るってのは背景とかで結構便利なのですが、それぞれにグローかけたりマテリアルを個別にってのはインスタンスオブジェクトなので当然無理。なので実体化させたい、けど量多すぎて一個ずつやってられねぇよゴラァ
を楽にしてくれるの書いた
くコ:彡さんのところにUninstantinate.pyっていうインスタンス実体化させるスクリプトがあるっぽかったけど見つからなかったので自作。
実体化というより置き換えているだけです、大量にしかけるとやっぱり重くなります。
■使い方
実体化させたいインスタンスオブジェクトを選択して実行、複数選択可能です。
右クリック保存で保存してください。
Materialize_instance.js
複数オブジェクトの名前を順番に取得する方法が分からなかったのでメモ
//---------------------ここから--------------------------
//セレクションリスト取得して変数oObjに代入
var oObj = GetValue("SelectionList");
//配列の数はSelection.Countで取得 取得した値を超えるまでループさせる
for (var i=0; i < Selection.Count ; i++){
var oObjlist = oObj(i)
//ログを流す
logmessage (oObjlist)
}
//-----------------------ここまで------------------------
Selection.Countが現在選択しているオブジェクトの数を数えてくれるのでループ回数に使用
oObj(0)が一番目のループ
(0)の部分はループ回数を入れているので一回ずつ回数が増えて次のオブジェクトを読む ということだと思う。
これで複数処理したいことが色々できるようになったぜひゃっほー