HOME

Maneki Pipeline

ゲーム開発のためのプロシージャル

HDA化したVertexAnimationTextureを含むノードで出力時に発生するエラーと対策

ノード内部の編集が紐づいたノードの機能をHDA化する場合のエラー対策

Labs Vertex Animation Texture ノードを組み込んだhdaを作成し、「render」ボタンを紐付けたhdaを作成したところ次のエラーが発生した

hda内部にあるLabs Vertex Animation Texture のRenderAllをHDAに紐づける
HDA化して紐づけたボタンを押すととするとエラーが発生する

Skeltonノードの Stash Input などでも同様のエラーが発生する

SkeltonのStashInputでもHDAに紐づけると同様のエラーが発生する

エラー文面

Traceback (most recent call last):
File "labs::Driver/vertex_animation_textures::3.0/renderall", line 1, in <module>
File "labs::Driver/vertex_animation_textures::3.0, PythonModule", line 43, in cookAndRender
File "D:\\apps/Side Effects Software/Houdini 20.5.613/houdini/python3.11libs\\houpythonportion\\[OpNode.py](<http://opnode.py/>)", line 298, in setParms
parm.set(value)
File "D:\\apps/Side Effects Software/Houdini 20.5.613/houdini/python3.11libs\\houpythonportion\\[Parm.py](<http://parm.py/>)", line 97, in set
self._set(value)
File "D:\\apps/Side Effects Software/Houdini 20.5.613/houdini/python3.11libs\\[hou.py](<http://hou.py/>)", line 72010, in _set
return _hou.Parm__set(self, *args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
hou.PermissionError: Failed to modify node or parameter because of a permission error.  Possible causes include locked assets, takes, product permissions or user specified permissions

権限エラーとのことだがノードがロック状態、つまりデジタルアセットの状態だと発生してしまうようだった。
一方でAllowEditingContents等実行し、アンロックされた状態のhdaなら出力できる。

hdaとして作成された後にロック中だとエラーが発生してしまう(ので、ロックされていないHDAの作成中には気づきにくい)

解決方法は HDA の設定を行う 「Type Properties」 の 「Editable Nodes」 に対象となるノードを紐づけることで動作するようになる。

Editable NodesにPermission Errorとなるノードを追加

リファレンスを見るとEditableNodesに指定したノードはhdaのようなロック状態でも内部に編集が可能になる状態とのこと。

Operator Type Propertiesウィンドウ
https://www.sidefx.com/ja/docs/houdini/ref/windows/optype.html


今更知りましたがHDAって結構色々な設定項目ありますね

fish_ball

プロシージャル魚類