background

スポンサーサイト

--年--月--日(--)

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


これでふんぎり。

2010年08月09日(Mon)

ぱいそん飽きてきたと言いつつ、やっぱり消化不良というか、そもそも自分で使う用途で作り始めたんだから配付用途に難があろうが実用のカタチにするべきじゃないか、みたいな葛藤が少しあったりなんかして。

モーフを対称コピーするスクリプトの話。

やっぱり既存の値が入ってる(=移動量がゼロでない)モーフ値に別の値を入れようとするのが上手くいかないみたいで。空のモーフを作成して上書きすれば入れ替えもコピーも問題なくできることがわかった。

100809-1

ただ、この方法だと現在の移動量を取得するのにもう一つ余分にモーフターゲットを作ることになる。ワールド座標からパーツにかかっているワールド変換の影響を省いて、ジオメトリの座標との差分を取って……というのも考えたんだけど、面倒くさいし上手くいくと思えなかったし、自分で使う分には毎回ダミーモーフを削除するぐらいなんてことないんで、簡単な方法でいくことに。

スクリプトを実行すると、メニューリストが表示される。普通はX軸のコピーか入れ替えしか使わないと思う。敷居値(Threshold)は対称地点にある頂点を探すときに、どれだけ誤差を許容するか、の値。一応初期値はPoser単位で0.00001(約0.026ミリ)。上げすぎると誤判定が増えてヘンな結果になってしまう。テストに使ったM3RRなら、とりあえず初期値で問題ない。

100809-2

対象は小道具でもフィギュアのパートでも可。マグネットが選択されているときは、自動的に適用先のアクターを選択状態にする。実行後は新しいモーフが二つ作成されている。処理時間は自分の環境でM3RRの頭部(約一万頂点)で30秒ぐらい。

100809-3

Dummyと名前のついたモーフはさっくり削除。

実行対象がフィギュアで左右のパートがある場合、X軸のコピーは選択した反対側のパートに作成される。入れ替えは意味がないのでメニューからは省略。

100809-4

そんなわけで一応ちゃんと動くものができたんだけど、ダミーモーフができてしまうという欠陥があるので、正式な配付はしないことに。β版だけ転がしておくので、既存のMorph Mirrorなどのスクリプトが動作しない人や、専用ソフトを使えない人で需要のある人は試してみて頂けるといいんじゃないかなと思う。

100809-5

で、今は気分転換に小物製作。

スポンサーサイト


飽きてきた。

2010年08月02日(Mon)

モーフターゲットを鏡面コピーするスクリプトを作りかけていたんだけど、どうもうまくいかない。

こういう感じにマグネットを適用しておいて、

100802-1

X軸方向にコピー。

100802-2

Y軸方向にコピー。

100802-3

-X側から+X側へコピー。

100802-4100802-5

あたりはまあなんとか動くんだけど、Swap(反転)をやろうとすると途端におかしくなる。

100802-6

やってることは、メニューで選んだ軸に沿って対称の頂点番号リストを作って、差分データを入れ替えたリストを作って順番にセットしていく、というもの。なので、コピーだろうと左右入れ替えだろうとやってることに違いはないはずなんだけど……。どうも、コピーされる側の頂点の差分データが0でないとおかしくなるっぽい。 ヘンだなあと思って試しに入れ替え処理後SetMorphTargetDeltaでもう一度全頂点に対して差分0を上書きしていったら、やっぱりランダムなモーフが入ってた。なのにMorphTargetDeltaをループさせて差分を参照したら、中身は0.0になっているという。

Pythonそのものを触り始めたばかりだから、これがPythonのお約束に違反した何かをやってしまっているせいなのか、SetMorphTargetDeltaあたりに制約があるからなのかもわからない。っていうか、そもそもPython上でモーフが削除できたらもっと簡単に処理回せるのになー。

そんなわけで、飽きてしまったのでPythonはまた気が向くまで放置の方向で。





Menu

Profile

Kyotaro

確定名:Kyotaro
ネタを探しているらしい。

Categories

Calendar

07 | 2010/08 | 09
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 - - - -

Comments

Archives

Track back

RSS feed

Links

Search

※2011年4月6日のサーバ障害の為、エントリのアドレスが以前のものからズレています。当Blogのエントリにリンクを張っておられた方は、お手数ですがアドレスのご確認をお願い致します。

※Internet Explorer非推奨。


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。