APEXのkinefx::characterblendshapescoreはIDを用いて適用する頂点を指定出来ますか?

   298   4   0
User Avatar
Member
34 posts
Joined: 7月 2018
オフライン
お世話になっております。
APEX Autorig Componentで作れるBlendshapeは、kinefx::characterblendshapescoreで変形していることを確認しました。
これには、sop::blendshapes::2.0のように、ptidattrパラメータがありませんでした。
sop::blendshapes::2.0は、ptidattrを用いることで、ブレンドシェイプメッシュによってデフォームさせたいメッシュの頂点を、
IDによる頂点番号の照合で指定することが出来ます。

非常に簡単ですが、私がやりたいことをサンプルとして用意しました。
change_all_or_head_onlyノードを、切り替えることで、ブレンドシェイプメッシュを全身か頭のみに出来ます。
これを頭のみにした場合、APEXのブレンドシェイプは壊れます。
しかし、私には頭のブレンドシェイプメッシュ以外必要ありません。
(データ量など、諸々鑑みて、全身のメッシュは不要であるため)

Character Blend Shapes SOPのワークフロー自体に、IDの概念がなさそうなので、出来ないと感じています。
ですが、もし見落としている項目があるのなら知りたいのです。
もしくは、出来ない場合、今後これがアップデートで追加されるか知りたいです。

よろしくお願いします。
Edited by kurosaba - 2025年10月13日 11:01:09

Attachments:
apex_kinefx_blendshape_sample.hiplc (691.3 KB)

User Avatar
スタッフ
481 posts
Joined: 4月 2015
オフライン
問題を再現する手順も書いていただけますでしょうか?
User Avatar
Member
34 posts
Joined: 7月 2018
オフライン
画像1枚目は、change_all_or_head_onlyノードのスイッチが0の時です。
これは全身のブレンドシェイプを持っている時の条件です。
この時、blendshapeノードで、APEXビュアーステートを有効にし、deform_00スライダーリグを動かすと、
正常にブレンドシェイプしていることが確認できます。

画像2枚目は、change_all_or_head_onlyノードのスイッチが1の時です。
これは頭のみブレンドシェイプを持っている時の条件です。
この時、blendshapeノードで、APEXビュアーステートを有効にし、deform_00スライダーリグを動かすと、
ブレンドシェイが破綻していることが確認できます。

提供したサンプルでは、これを再現することが出来るようになっています。
そして、私がサンプルでやりたいことは、
「頭のみのブレンドシェイプメッシュで、ブレンドシェイプが正常に動作するようにしたい」
ということです。
Edited by kurosaba - 2025年10月13日 11:09:47

Attachments:
capture_03.png (2.9 MB)
capture_04.png (2.8 MB)

User Avatar
スタッフ
481 posts
Joined: 4月 2015
オフライン
再現できました。150647 で登録しました。

申し訳ないですが、「手順」とは、理想的には、番号付きで箇条書きに記述された問題の再現をするために必要な最低限のステップ(手順)のことです。
詳しくは

https://www.sidefx.com/ja/forum/topic/75614/ [www.sidefx.com]

をご覧ください。引き続き宜しくお願い致します。
User Avatar
スタッフ
481 posts
Joined: 4月 2015
オフライン
こちらですが、上流で Attribute Wrangle を追加、 Point アトリビュートとして

i@id = @ptnum;

を追加すると、問題が自動的に回避されるようです。
また今後のビルドで、この id またはグループを明示的に指定できるようにするとのことです。


Attachments:
id.png (1.7 MB)
apex_kinefx_blendshape_sample_id.hiplc (692.4 KB)

  • Quick Links