LoginSignup
6
6

More than 3 years have passed since last update.

Houdiniにおけるデバッグ Vol.1 表示・確認について

Last updated at Posted at 2020-04-03

はじめに

Houdiniでいろいろノードを組んだりVEXやPythonでコーディングしていくといつの間にか複雑になってしまいがちです。そんな複雑になったシーンでエラーの原因を探ったり、修正を加えて行くのは至難の技となることがあります。そこでHoudiniでのデバッグの方法について何回かに分けて書いていきます。今回は様々な情報を確認する方法について取り上げます。


第二回はこちら
第三回はこちら


デバッグが必要になる場面

  • エラーが起きている時
  • 想定した動作にならない時
  • 処理が遅く最適化したい時

表示・確認系

まずは状態を知ろうということでいろいろな情報を教えてくれるものを紹介します。
尚、各見出しにHoudiniのヘルプをリンクしています。

Display Options マーカー

各コンポーネントの番号や法線を可視化します。
a.png

Display particles as Disk

パーティクルのサイズは pscale で設定したものを Diskで可視化できます。
b.png

Geometry spread Sheet

Geometry spread Sheet でアトリビュートの確認をします。
各コンポーネント毎で確認ができ、アトリビュートが多いときには検索窓から探すと該当のもののみ表示します。
またグループもここで確認でき group:testのように接頭に group: が付きます。
c.png

Node Info

各ノードをマウスオーバーした時に出るノードリングの左側にある i をクリックすると出現。
ここで確認できることはノード名、ノードパス、ジオメトリ情報、アトリビュート、グループ、Time Dependent情報、クックタイム、作成時/編集時情報、HDAの格納ディレクトリーパス、そしてコメントの追加が可能です。
d.png

Badges

ノードに関するステータスを表示します。
いくつか種類がありますが、特に ErrorWarning に気をつけます。どこがおかしいのかを表示してくれて、また不具合が起きている箇所に飛ぶことができるので便利です。(エラーメッセージにに該当ノードパスが表記されている時)
e.gif

アトリビュートの@Cd@Alphaを使用する

カスタムアトリビュートを作成してそのアトリビュートを利用してジオメトリに編集を加えたい時、正しく反映されているかを @Cd@Alpha を利用して確認することができます。
f.gif
g.gif
例にあげたものは Attribute Transferを使用しているので @Cd で設定することはできますが簡単な例示のためにこちらをあげました。 動いている球体にactive というアトリビュートを作成してGridに移し、 active = 1の時にGridにノイズがかかるようにしています。どの部分が active に変わるかを @Cd@Alphaを利用して目視できるようにしました。

Visualizersで可視化

Visualizers
Visualize
特定のアトリビュートをビジュアライザーを利用して可視化することができます。
利用方法としてはNodeで追加するか、もしくはディスプレイオプションからも設定ができます。
例はポジションのY値を height アトリビュートに格納したものを可視化しました。調べたいノードを選択している状態で x を押すと自動で Visualize ノードが接続されます。
h.jpg

Printf

VEXの処理をHoudini Consoleに出力します。
書式は printf(“フォーマット文字列“,引数 )でフォーマット文字列でフォーマットを指定できます。
(%f,%i,%sなど)
単純なものであればアトリビュートを確認したりで可能ですが、引数を渡したりなど複雑化すると途中でプリントデバッグするといいかもしれません。
i.png

おわりに

各種データを把握することはデータを構築し、またデバッグするにあたって重要なことです。
今回は表示や確認する方法について書いてきました。次回以降でエラー表示に関することやエラーハンドリングなどについて書いていきたいと思います。

参考

Houdini Tutorial: Send debug output (VEX) to the Houdini Console

Houdini: Wrangleがわからない(分かった感ある) - kick the base

6
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
6