Houdini 20.0 ノード オブジェクトノード

DOP Network object node

ダイナミックシミュレーションを格納します。

DOP Network ObjectはDOPシミュレーションを格納します。 シミュレーションは、あらゆる数のシミュレーションオブジェクト(/obj内で表示されているObjectsのことではありません)で構成することができます。 これらのシミュレーションオブジェクトは、このノードに格納されているDOPノードによって構築・制御されます。

キャッシュ化オプションやタイムステップコントロールなど、シミュレーション全体における制御が、このノードに用意されています。 また、このノードのTransformパラメータを使ってシミュレーション全体をトランスフォームすることができます。 このレベルでシミュレーションをトランスフォームしても、全くシミュレーションには影響は与えません。 Transformは、シミュレーションが発生した後に適用されます。

Tip

キャッシュ化した流体の再生を改善するには、 Simulation タブにある Cache Memory を増やしてください。

パラメータ

Playback Simulation

DOP Networkをシミュレーションファイルのプレイヤーにします。 playbackモードを有効にすると、DOP Networkの結果が選択したシミュレーションファイルになります。 ネットワークの内部ノードは無視されます。 このオプションを使用して再生するシミュレーションファイルを作成する方法は、DOP Network内にOutputノードを作成することです。

Simulation

Reset Simulation

シミュレーションキャッシュ全体をクリアします。ビューポートでDOP Networkを見ているときは、 右手側のビューポートの上部にあるボタンがアクティブになります。そのボタンを押すと Reset Simulation ボタンを押したときと全く同じ動作が実行されます。

Display

シミュレーションをビューポート内に表示するかどうか。

Initial State

シミュレーションの初期状態として使われるファイルの名前。 このファイルは、File DOPまたはDynamics Output Driverのどちらかが作成したシミュレーション状態ファイルでなければなりません。 このパラメータが設定されると、このネットワーク内のDOPノードは最初のシミュレーションタイムステップで処理されません。

Timestep

シミュレーションのタイムステップの長さをコントロールします。 通常この値をフレームタイムの数倍にしますが、必須ではありません。 より大きいタイムステップを指定すると、シミュレーションは高速になりますが精度が低下し、安定性にも欠けます。 タイムステップが小さければ結果はより美しくなりますが、計算時間が遅くなります。

Substeps

デフォルトのタイムステップエクスプレッションは、このパラメータを使って、DOPシミュレーションが各フレームで 実行するサブステップ数を制御します。タイムステップで1/$FPSパラメータで作業するよりも簡単に調整することができます。

Offset Time

このシミュレーションのためのシミュレーション時間とプレイバーに表示されるグローバル時間の間のオフセットを秒で指定します。 パラメータを1に設定すると、このシミュレーションはフレーム25までクッキングを開始しません。 グローバル時間が1秒の場合、シミュレーション時間は0になります。 doptimeなどのいくつかのエクスプレッション関数は、グローバル時間からシミュレーション時間へ、またそのシミュレーション時間からグローバル時間へ変換するためにあります。

Start Frame

デフォルトのオフセット時間エクスプレッションは、このパラメータを参照して、適切にオフセット時間を設定します。 これで、開始時間を秒ではなくフレームで設定することができ、一部のケースにおいてより直接的に行なうことができます。 開始フレームを24に設定すると、シミュレーションはフレーム24までクッキングを開始しません。

Note

これを使うと、$SFおよび$Fは、シミュレーション内部と同じものを参照しなくなります。

Scale Time

このDOP Network用にグローバル時間をシミュレーション時間に関連付けるスケール係数を指定します。 1より大きい値は、シミュレーション時間がグローバル時間よりも高速に進むことを意味します。 1未満の値は、シミュレーションがグローバル時間を基準にスローモーションで実行されるようになります。 doptimeなどのいくつかのエクスプレッション関数は、グローバル時間からシミュレーション時間へ、またそのシミュレーション時間からグローバル時間へ変換するためにあります。

Max Feedback Loops

異なるソルバを使っているシミュレーションオブジェクトが相互Affector(クロスオブジェクトやRBDオブジェクト)に設定されている時、 このパラメータは、2つのソルバの解決を試みながら反復を実行するための最大数をコントロールします。 異なるソルバが相互Affectorである状況で、この数を増やすと、満足のいくシミュレーション結果に到達する可能性が高くなりますが、シミュレーション計算時間も増加することになります。

流体シミュレーションのケースでは、流体は適用されたフィードバックフォースに適応することができないので、 高い値ではなく2の値を使ってください。値が大きいと流体が不自然に強くなり、相当な時間がかかります。

Enable Automatic Resimulation

DOPシミュレーション内のパラメータを変更した時、あるいは参照した外部ノードを変更した時、 シミュレーションのキャッシュは無効とマークされます。 このパラメータがオンの場合、次にシミュレーション時間が0に到達するようにプレイバーを動かすと、キャッシュがクリアされ、最初のシミュレーションタイムステップが再計算されます。 シミュレーション時間が0の時にキャッシュが無効化される場合、初期状態が即座に再計算されます。 現行時間が時間0を超えている場合、一番最近のタイムステップが再クックされ、現行時間を超えたキャッシュがクリアされます。 しかし前のタイムステップは全て無効とマークされる以外は着手されないまま残ります。 このパラメータがオフの場合、キャッシュは全く同じ方法で無効であるとマークされますが、キャッシュが自動的にクリアされることは決してありません。 このモードでシミュレーションを再クックするには、このパラメータダイアログ上、またはビューポート上部にある Recook Simulation ボタンを使わなければなりません。

Provide Data Hints

シミュレーションデータ関係がスクリプトディレクトリにあるdophints.cmdと呼ばれるファイルに保存できるように規則化します。 このオプションがオンなら、各タイムステップの終わりに、シミュレーション状態がそのファイル内のルールと比較されます。 ルールが破られた場合、それに該当するDOPノードに警告が追加されます。 これは、DOPの使い方を学習する時、またはシミュレーションの問題をデバッグする時に非常に役に立ちます。 このオプションをオフにすると、各タイムステップの終わりに、この動作確認ステップがスキップされるので、シミュレーションのパフォーマンスが改善します。

Interpolate Display Data

グローバル時間をシミュレーションのタイムステップ境界と並んでいない値に設定すると、 このパラメータは、どのようにシミュレーションを表示するべきかを制御します。 このパラメータがオフの場合、最も近いシミュレーションタイムステップの内容が表示されます。 このパラメータがオンの場合、直前および次のシミュレーションタイムステップの内容が補間されて、現行時間に実際にあったようなシミュレーションの近似値を作成します。 このオプションによって、たとえシミュレーションのタイムステップがグローバルフレーム時間と並んでいないとしても、シミュレーションをビューポートにスムーズに表示させることができます。

Cache

Cache Simulation

シミュレーションキャッシュを有効にします。このオプションを有効にしない限り、ソルバの多くは適切に動作しません。 しかし、非常に大規模なシミュレーションにおいては、このオプションを無効にすると、シミュレーション用のメモリ使用量が確実に最小になります。

Compress .sim Files

キャッシュ化用にディスクに書き出される.simファイルを圧縮するかどうかを決定します。 圧縮すると、ディスクのサイズを大幅に削減することができますが、キャッシュ化する時間もまた大幅に増加します。 キャッシュの読み込みまたは書き出しが遅いと感じたら、特に流体シミュレーションでは非圧縮の.simファイルを使ってみてください。

Allow Caching To Disk

メモリにおけるキャッシュの最大サイズに到達した場合、DOP Networkは、新しいエントリー用に古いキャッシュエントリーの削除、または古いエントリーをディスクへ保存のどちらかを行なうことができます。 もしこのオプションがオンである場合、古いキャッシュエントリーがディスクに保存され、必要であればディスクから再読み込みされます。 このモードでは、単に古いキャッシュエントリーを破棄するよりも速度は遅くなりますが、内部メモリキャッシュサイズに関係なく常にシミュレーション履歴全体を確実に使用することができます。

Cache to Disk in Non Interactive Sessions

HScriptまたはHythonといった非インタラクティブセッションにおいては、シミュレーション履歴全体を利用したくはないことも多いでしょう。 デフォルトの挙動は、Allow Caching to Diskを無視して、ディスクにキャッシュ化しないことです。 この挙動は、このトグルで上書きすることができます。 ディスクに古いシミュレーション状態を保存すると、処理が非常に重くなることがしばしばあり、その結果に関してプレイバーをスクラブしてはいないので、ディスク容量の無駄です。

Cache Substep Data

一部のソルバは、より良い結果を得るために、独自の時間の内部サブサンプリングを実行します。 このオプションは、この内部サブサンプリング中に作成されたサブステップデータに関し、キャッシュの一部として保存するべきかどうか、またはシミュレーションのタイムステップが計算を 終了したら即座に破棄するべきかを制御します。このオプションをオンにしておくと、デバッグ目的やサブタイムステップデータを正確に表示させる必要がある場合に役に立ちます。 実際のサブステップデータを使用すると、補間されたデータを表示するより正確な結果が生成されます。

Cache Memory (MB)

このシミュレーション用のキャッシュがどのくらいのメモリを消費することができるかをメガバイトで指定します。 この制限を超過すると、前述の Allow Caching To Disk パラメータ値に依存しながら、古いキャッシュエントリーが削除されるか、またはスペースを空けるためにディスクに保存されます。

Timeless (No History)

各フレームがまるで最初のフレームであるかのように、シミュレーションが新しく開始されます。 これは、$SFは常に1であるという意味です。しかしながら、もしネットワークが.simファイルに基づいて$Fを持つFile DOPで構成される場合、現行フレームのみが読み込まれなければならず、 ベイクしたシミュレーションの高速なランダムアクセスが可能であることも意味します。 このモードでは、キャッシュに保存されるのは1フレームのみですのでご注意ください。

Save Checkpoints

通常、 Allow Caching to Disk が有効で、シミュレーションがメモリ制限に到達している時、シミュレーションはtempディレクトリにあるファイルに保存されます。 これらは有効な.simファイルである一方、管理が難しいです。このオプションがオンの時、各フレームは即座に指定したディレクトリにキャッシュ化されます。 各フレームはCache Memoryに到達するまでメモリ内に保存されますが、(既にディスク上にあるので)この時点ではディスクには保存されません。 チェックポイントの利点は、キャッシュフレームが既に存在する場合、たとえシミュレーションがリセットされたとしても、DOPはそのフレームをクックせず、代わりにそのフレームを読み込むことです。 さらに言えば、要求されたフレームの前で、最後の有効なチェックポイントフレームの後のフレームをクックするだけです。 そのため、もしcache_50.simを持っていてフレーム100をクックしようとする場合、フレーム50でクッキングを開始することができます。

Save Checkpointsの使用は、Automatic ModeでFile DOPを使うことと同等です。 しかし、File DOPでフレーム50に飛ぼうとするとき、最初の50フレームを読み込まなくてはなりません。 チェックポイントを使えば、このステップをスキップできます。

Checkpoint Files

チェックポイントを保存するためのファイルシーケンス。これらは.simファイルで、File DOPまたは File SOPを使って読み込むことが可能です。変数$SFはフレーム番号を指定するために使わなければいけません。 $Fはシミュレーション空間で動作しているので、使うことはできません。$SF4もサポート済みです。

Checkpoint Trail Length

チェックポイントファイルが削除される前にどれだけの量の履歴が保存されるか。 値が0では、キャッシュファイルは削除されません。 そうでなければ、この値よりも古いフレームはディスクから消去されます。

Note

削除されるのは、Houdiniのこのセッションで作成されたチェックポイントファイルのみです。 もし存在するキャッシュファイルでHoudiniを再スタートする場合、削除されません。 クラッシュした位置から再スタートしたいでしょうし、もしまたクラッシュした場合にまた同じ位置から 再スタートできることを保証したかったので、このような仕様にしました。

Checkpoint Interval

チェックポイント間のフレーム間隔。これを1に設定すると、フレーム毎にチェックポイントを保存します。 これを高い値に設定すると、指定したフレームおきにチェックポイントを保存します。 例えば、これを5に設定すると、5フレームおきにチェックポイントを保存します。

大きなシミュレーションを走らせる場合は、これによってディスク容量を節約することができます。

Transform

Note

オブジェクトのトランスフォームは、追加したノードプロパティの存在によっても決定されます。

Transform Order

左のメニューでは、トランスフォームを適用する順番(例えば、スケールしてから回転して移動)を選択します。これは、順番を変えるだけでオブジェクトの位置と向きが変わります。

右のメニューでは、X,Y,Z軸の回転順を選択します。キャラクタ次第では、ある順番にすればキャラクタのジョイントトランスフォームが扱いやすくなる場合があります。

Translate

XYZ軸に沿って移動します。

Rotation

XYZ軸に沿って回転します。

Scale

XYZ軸に沿って不均一にスケールします。

Pivot

オブジェクトの基点。 ピボットポイントの設定も参照してください。

Uniform Scale

3つの軸すべてに沿って均一にオブジェクトをスケールします。

Modify Pre-Transform

このメニューには、pre-transformの値を操作するオプションがあります。pre-transformとは、標準のトランスフォームパラメータよりも前に適用される内部的なトランスフォームのことです。これは、全体のトランスフォームを変更しないで、以下の移動、回転、スケールのパラメータ値のための参照のフレームを変更することができます。

Clean Transform

これは、同じ全体のトランスフォームを維持しながら、移動、回転、スケールのパラメータをデフォルト値に戻します。

Clean Translates

これは、同じ全体のトランストームを維持しながら、移動パラメータを(0, 0, 0)に設定します。

Clean Rotates

これは、同じ全体のトランストームを維持しながら、回転パラメータを(0, 0, 0)に設定します。

Clean Scales

これは、同じ全体のトランストームを維持しながら、スケールパラメータを(1, 1, 1)に設定します。

Extract Pre-transform

これは、同じ全体のトランスフォームを維持しながら、移動、回転、スケールのパラメータを設定してpre-transformを削除します。pre-transformに傾斜があると完全に削除できないことに注意してください。

Reset Pre-transform

これはパラメータを変更せずに完全にpre-transformを削除します。これは、移動、回転、スケールのパラメータがデフォルトの値でなければ、オブジェクトの全体のトランスフォームが変わります。

Keep Position When Parenting

オブジェクトが親子化されても、オブジェクトのトランスフォームパラメータを変更することで、現在のワールドポジションを保持します。

Child Compensation

オブジェクトをトランスフォームする時、その子のトランフォームパラメータを変更することで、その子の現行ワールドトランスフォームを保持します。

Enable Constraints

オブジェクトの Constraints Network を有効にします。

Constraints

Constraints Network CHOPのパス。 拘束を作成する方法も参照してください。

Tip

Constraintsドロップダウンボタンを使用することで、Constraintsシェルフツールのどれかをアクティブにすることができます。そのボタンを使用すると、パラメータエディタで選択されているノードから自動的に1番目のピックセッションが満たされます。

Note

オブジェクトのLookatとFollow Pathのパラメータは廃止されました。代わりにLook AtFollow Pathの拘束を使用してください。 これらのパラメータは、今のところ非表示にしているだけなので、そのノードのパラメータインターフェースを編集することで表示させることができます。

オブジェクトノード

  • Agent Cam

    カメラを作成してそれを群衆エージェントに取り付けます。

  • Alembic Archive

    Alembicシーンアーカイブ(.abc)からオブジェクトをオブジェクトレベルにロードします。

  • Alembic Xform

    Alembicシーンアーカイブ(.abc)のオブジェクトからトランスフォームのみをロードします。

  • Ambient Light

    無指向性の一定レベルのライトをシーン内(またはライトのマスク内)のすべてのサーフェスに追加します。

  • Auto Bone Chain Interface

    Auto Bone Chain Interfaceは、RiggingシェルフのIK from ObjectsツールとIK from Bonesツールで作成されます。

  • Blend

    複数入力オブジェクトのトランスフォーメーションを切替またはブレンドします。

  • Blend Sticky

    2つ以上のStickyオブジェクトのトランスフォーム間をブレンドしてトランスフォームを計算することで、ポリゴンサーフェス上の位置をブレンドすることができます。

  • Bone

    ボーンオブジェクトは手/足/腕のようなオブジェクトの階層を作成します。

  • Camera

    カメラからシーンを見て、その視点でレンダリングできます。

  • DOP Network

    ダイナミックシミュレーションを格納します。

  • Environment Light

    環境光はシーンの外部から背景照明を用意します。

  • Extract Transform

    2つのジオメトリの点の差分から変位量を取得します。

  • Fetch

    他のオブジェクトのトランスフォームをコピーして変位量を取得します。

  • Formation Crowd Example

    変化する編成のセットアップを説明した群衆サンプル

  • Fuzzy Logic Obstacle Avoidance Example

    このサンプルは、ファジィ論理コントローラにより実装されたエージェントの障害回避とパスの追従を示しています。

  • Fuzzy Logic State Transition Example

    このサンプルは、ファジィネットワークセットアップでステートのトランジション(遷移)がトリガーされる群衆のセットアップを示しています。

  • Geometry

    モデルを定義するジオメトリオペレータ(SOP)を格納します。

  • Groom Merge

    複数オブジェクトのグルームデータを1つのデータに結合します。

  • Guide Deform

    アニメーションスキンを使ってグルーミングカーブを動かします。

  • Guide Groom

    スキンジオメトリからガイドカーブを生成し、このノードに含まれている編集可能なSOPネットワークを使って、それらのカーブに対して細かい処理をします。

  • Guide Simulate

    入力ガイドに対して物理シミュレーションを実行します。

  • Hair Card Generate

    密集したヘアーカーブを、そのグルームのスタイルと形状を維持しつつポリゴンカードに変換します。

  • Hair Card Texture Example

    ヘアーカード用テクスチャの作成方法を示したサンプル。

  • Hair Generate

    スキンジオメトリとガイドカーブからヘアーを生成します。

  • Handle

    ボーンを制御するIKツールです。

  • Indirect Light

    間接光はシーン内の他のオブジェクトから反射した照明を生成します。

  • Instance

    インスタンスオブジェクトは他のジオメトリ、ライト、サブネットワークでさえもインスタンス化します。

  • LOP Import

    LOPノード内のUSDプリミティブからトランスフォームデータを取り込みます。

  • LOP Import Camera

    LOPノードからUSD Camera Primを取り込みます。

  • Labs Fire Presets

    たいまつや小さい炎や1メートル級のサイズまでの色々なサイズのプリセットを使って、迅速に炎のシミュレーションを生成してレンダリングします。

  • Labs Impostor Camera Rig

    このOBJは、Impostor Texture ROPで使用するカメラリグをセットアップします。

  • Labs LOD Hierarchy

    LOD階層を作成してFBXとしてエクスポートします。

  • Light

    シーン内の他のオブジェクトに光を当てます。

  • Light template

    組み込みレンダリングプロパティがない非常に限られたライトです。これは、ユーザ自身で必要なプロパティを選択して独自のライトを作成するときのみ使います。

  • Microphone

    Spatial Audio CHOP用にリスニングポイントを指定します。

  • Mocap Acclaim

    Acclaimモーションキャプチャーをインポートします。

  • Mocap Biped 1

    モーションキャプチャーアニメーションが設定された男性キャラクタ。

  • Mocap Biped 2

    モーションキャプチャーアニメーションが設定された男性キャラクタ。

  • Mocap Biped 3

    モーションキャプチャーアニメーションが設定された男性キャラクタ。

  • Null

    シーンの位置決め、通常は親子関係を設定するのに使います。このオブジェクトはレンダリングされません。

  • Path

    方向付き曲線(パス)を作成します。

  • PathCV

    Pathオブジェクトを使って制御頂点を作成します。

  • Python Script

    Python Scriptオブジェクトは、モデリングしたオブジェクトを定義するジオメトリオペレータ(SOP)用のコンテナです。

  • Ragdoll Run Example

    単純なラグドールのセットアップを示した群衆サンプル。

  • Reference Image

    絵を定義するコンポジットノード(COP2)用コンテナ。

  • Rivet

    オブジェクトサーフェスに鋲を作成します。通常は親子関係を設定するのに使用します。

  • Simple Biped

    フルコントロール付きのシンプルで効率的なアニメーションリグ。

  • Simple Female

    フルコントロールを備えたシンプルで能率的な女性キャラクタアニメーションのリグ。

  • Simple Male

    フルコントロールを備えたシンプルで能率的な男性キャラクタアニメーションのリグ

  • Sound

    Spatial Audio CHOPで使う音声放出ポイントを定義します。

  • Stadium Crowds Example

    スタジアムのセットアップ方法を示した群衆サンプル。

  • Stereo Camera Rig

    シーン内のゼロ視差設定平面と軸違いレンズ間の距離を制御するパラメータを用意しています。

  • Stereo Camera Template

    デジタルアセットとしてより機能的なステレオカメラリグが構築できる機能を提供しています。

  • Sticky

    サーフェスのUVに基づいて粘着オブジェクトを作成します。通常は親子関係を設定するのに使用します。

  • Street Crowd Example

    2つのエージェントグループを使ったストリートのセットアップを示した群衆サンプル。

  • Subnet

    オブジェクト用のコンテナです。

  • Switcher

    他のカメラからのビューに切り替えます。

  • TOP Network

    TOP Networkオペレータには、タスクを実行するオブジェクトレベルのノードを格納します。

  • VR Camera

    VR画像のレンダリングに対応したカメラ。

  • Viewport Isolator

    ビューポート毎に独立した制御が選択できるPython Script HDA。

  • glTF

  • 共通オブジェクトパラメータ

    共通オブジェクトパラメータについて。