Weightをノーマライズ

  • このフォーラムに新しいトピックを立てることはできません
  • このフォーラムではゲスト投稿が禁止されています

投稿ツリー



前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2009/7/19 7:29
asha  半人前   投稿数: 23
Blender249.2 WindowsVista

頂点Aが
ボーン1 Weight0.3
ボーン2 Weight0.2
頂点Bが
ボーン1 Weight0.8
ボーン2 Weight0

のとき以下のようにノーマライズしてくれる方法やスクリプトは存在するでしょうか?
頂点A
ボーン1 Weight0.6
ボーン2 Weight0.4
頂点B
ボーン1 Weight1.0
ボーン2 Weight0
合計が1.0で無くてもモーション中に割合を自動的に計算してくれることは理解しているのですが、
・なんとなく気持ち悪い
・Export時に便利かも
という理由から方法を模索しておりましたところ、該当するものを発見できなかったため質問させていただきました。

よろしくお願いいたします。
投票数:1 平均点:10.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2009/7/19 12:53
uimac  常連   投稿数: 49
Weight0がキモいから消したい、とかなら分かるんですが、
Weightの合計を1.0にしたいのは何か理由があるんでしょうか?

引用:
合計が1.0で無くてもモーション中に割合を自動的に計算してくれる

そんなことは無くて、実際計算するときは、

[移動後頂点] = [元の頂点座標] x Σ([ボーン用変換行列] x [Weight]) x [その他変換行列]

という感じだと思いますよ。
で、あるWeightを0.8から1.0に変えたとすると、それはもう面倒なことになりそうなような。


あと、
http://blender.jp/modules/news/article.php?storyid=2425

引用:
2)もし100%の VertexGroup が二つ以上ある場合、均等に分割され、その他の VertexGroup は除去されます。
3)もし100%の VertexGroup が一つだけなら、それがその Vertex のオーナーとみなし、他のすべての影響が除去されます。

というのが出たみたいですが、
個人的には、おいおい、勝手に除去すんなよ、と思います。

投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2009/7/21 8:11
asha  半人前   投稿数: 23
ひとつのボーンからしか影響を受けていない頂点のWeightは0.001だろうと1.0だろうと同じ結果になるものだと思っていました。
実験してみたところはやり変わりませんでした。
また二つのボーンから影響を受ける頂点においても「割合」を同じにして値を変えて実験してみたのですがこれも違いは見受けられませんでした。

Blender内部のソースを確認したわけではないのでどのように計算されているのかは分かりませんが今後注意しながら勉強を深めてみたいと思います。ご指摘ありがとうございます。

また、頂いたURLから実際にスクリプトを動かしてみたところ私の欲しかった機能がそのまま実装されておりました。
目的を果たせてありがたく思っております。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2009/7/22 0:47
uimac  常連   投稿数: 49
なんか一瞬投稿してしまったけどやっぱ違うっぽいので訂正・・・(気にしないでください)
どうも私の理解が足りてなかったようです…ソース見直してきます。

解決したようで良かったです。


投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2009/7/22 20:31
blekei  新米 居住地: 東京  投稿数: 17
身近なところでなんかのアプリは
1頂点2ボーンまででMAX1.0だったような。
そんなフォーマット&アプリが他にもあるのかは知りませんが。


投票数:0 平均点:0.00

  条件検索へ


ログイン

ユーザ名:

パスワード:



パスワード紛失

クイックリンク

2021/07/01版
●Blender.org
BlenderFoundation
- Blenderのダウンロード
- 公式チュート等
- 公式マニュアル(和訳)

●ニュース(英文)
BlenderNation

●Blenderコミュニティ
blenderartists.org

●Blender Q&A
- Blender Stack Exchange

●テストビルド
Buildbot(自動生成)


●開発関連
公式開発サイト
Blender開発blog
Blender Wiki