ここでは Houdini Engine for Maya プラグイン 17.0.486 で対応した Maya の Facet Set への対応について説明する。Facet Set を聞いたことのない人・使わない人は、以下無視して結構。
使用したビルド: Houdini 17.0.486 (486 以降必須)
Maya 2018.2
1. Maya で元シーンの作成
- PolyCube を作成 (pCube1)
- g キーでリピート (pCube2)
- polyCube2 の Width, Height, Depth をすべて 0.8 にする。
- pCube2 を X 方向に 0.4 程度移動する。
- select -r pCube1.f[5];
- sets -facets true ;
- できた Facet Set を FacetSet などと名前を変更
- select -r pCube1.f[5];
- Create->Sets->Set []
Name に Another Set などと入力して Apply。 - select -r pCube1.f[0] pCube1.f[1];
- Create->Sets->Set []
Name に Ordinary Set などと入力して Apply。 - Windows->Relationship Editor->Sets を実行、Relationship Editor (Set editing) を開く。
2. 期待される挙動
最初に期待される挙動を Maya の機能を使って行う。
- pCube1 を選択、 pCube2 を追加(Shift)選択し、Mesh->Boolean->Difference を実行。
- 結論から言うと、Houdini Engine 経由で Houdini のBoolean 機能をHDA化し Maya で実行すると、通常のセット (AnotherSet, Ordinary Set) には新しい面が追加されるが、Facet Set (FacetSet) には追加されなかった。
3. 486 での修正
486からの修正方法を以下に説明する。
- 上記の Maya のBoolean を Undo するなり、保存したシーンを読み直すなりして、元に戻す。
- Houdini Engine->Load Asset... で ktaki_newbooleanformaya.hda をロードする。
- ktaki_newbooleanformaya1がシーンに追加され、
... No geometry generated!
というエラーが出るが入力がつながっていないだけなので心配無用。 - pCube1を選択、ktaki_newbooleanformaya1 を追加 (Ctrl) 選択、アトリビュートエディタ上の ktaki_newbooleanformaya1 の Subnetwork Input#1 脇の Set to Selection をクリック。
- pCubeShape1 がInput#1 に追加された。
- pCube2を選択、ktaki_newbooleanformaya1 を追加 (Ctrl) 選択、Subnetwork Input#2 脇の Set to Selection をクリック。
- アトリビュートエディタの上部で houdiniInputGeometry1 というのを探し当て、その中の Allow Facet Only Sets のトグルをオンにする。
または MEL で
setAttr "houdiniInputGeometry1.allowFacetSet" 1; - houdiniInputGeometry2 でも同様に行う。または MEL で
setAttr "houdiniInputGeometry2.allowFacetSet" 1; - ktaki_newbooleanformaya1 に戻り、Sync Asset をクリック。これで、FacetSet にも面が追加された。
まとめ
- Facet Set を Houdini Engine プラグインで認識させるには、houdiniInputGeometry 上に新たに追加された Allow Facet Only Sets (Maya) アトリビュートをオンにする必要がある。
setAttr "houdiniInputGeometry.allowFacetSet" 1; - シーンファイル: h17_setNodeTest_new.zip (14KB)
0 件のコメント:
コメントを投稿