Houdini20 新機能と改良


Houdini20は、2023年11月9日(木)にSideFX社よりリリースされました。

YouTube 一般公開:Houdini20 紹介動画!

Modeling and Geometry Rigid Body Dynamics / Vellum
KineFX / Muscles / Feathers / Crowds Solaris / Karma / Pyro / Clouds / Flip / Oceans

IndyZoneチャンネルでは、Houdini20の新機能をピックアップして、実際にHoudiniを触りながら新機能や改良された機能などをご紹介しています。

▼目次

1. KineFX and Animation
 1.1 アニメーション
 1.2 プロシージャルリギング
 1.3 Procedural motion & Physics
 1.4 Input/Output
 1.5 サンプルファイル
2. Muscles and Tissue
3. Feathers
 3.1 概要
 3.2 ノード一覧
 3.3 サンプルファイル
4. Crowds
5. Solaris
 5.1 Interface
 5.2 Render Statistics
 5.3 新機能/新ノード
6. Karma
 6.1 Karma CPU
 6.2 Karma XPU
 6.3 新機能/新ノード
7. Modeling and Geometry
8. Clouds
 8.1 モデリング
 8.2 シェーダー
 8.3 ノイズタイプ
 8.4 サンプルファイル
9. Pyro
10. FLIP fluids
11. Oceans
12. Rigid body dynamics
13. Vellum
14. PDG
 14.1 UI/UX
 14.2 TOP networks
 14.3 Services
 14.4 USD
 14.5 Schedulers
 14.6 Processors
 14.7 Partitioners
15. Machine Learning
16. Viewport, User Interface, and Scripting
17. VEX and OpenCL
 17.1 VEX
 17.2 OpenCL
18. HQueue
 18.1 KarmaとUSD統合の改善
 18.2 ROPとTOPノード
19. Licensing
 19.1 改善点について
 19.2 管理ツール/対応バージョン
20. Houdini Engine, APIs, and Plug-ins
 20.1 Unreal plug-in
 20.2 Unity plug-in
 20.3 HAPI
 20.4 Maya plug-in
 20.5 3Ds Max plug-in
 20.6 glTF
21. Platforms
 21.1 Python
 21.2 macOS
 21.3 VFX Reference Platform
 21.4 MPlay
 21.5 3rd-party Tools and Libraries

1. KineFX and Animation

1.1 アニメーション

Animation Stateについて:
アニメート・ステートは、アニメーション・シーンに複数のキャラクタを表示できる新しいビューア・ステートで、ユーザはキャラクタに対してFKやIKなどのポージングの設定、キャラクタのコントロール、キャラクタ間のコンストレイントを作成することができます。また、物理ベースのモーションやラグドールなどの機能をアニメーションに適用することもできます。

  • Selection sets は新しいアニメート・ステートで、キャラクタコントロールをグループ(セット)に編成するために使用されます。これらのセットを使用して、コントロールのグループを選択、非表示、固定、分離することができます。
  • Animation Toolbarは、カスタマイズ可能なツールバーで、シンプルなスライダーツールで構成されています。ブレイクダウンポーズをすばやく作成したり、キーのリサンプリングやイージーカーブへのキーのブレンドなど、アニメーションコントロールやカーブへの変更を簡単に適用することで、アニメーションワークフローの改善に役立ちます。
  • Animation bookmarksは、プレイバーやアニメーションエディタのタイムライン上の1つのフレームまたはフレームの範囲にあるマーカーで、アニメーションのさまざまな部分を一目で整理し、識別するのに役立ちます。
  • アニメーションエディタのグラフビューで、カーソルをキーフレーム上に直接置かずに、MMBを使ってキーフレームを移動できるようになりました(キーフレームを移動するさまざまな方法については、グラフビューを参照してください)。MMBがグラフと相互作用する方法は、新しいMiddle Mouse Interactionオプションで設定できます。
  • グラフビューでカーブを引くと、ベジェセグメントやキュービックセグメントをドラッグして、その形状を直感的に操作することができます。

目次へ戻る

1.2 プロシージャルリギング

APEX (All-Purpose EXecution) について:
APEX(All-Purpose EXecution)は、Houdiniの新しいグラフ評価フレームワークで、グラフ構造を構築して実行し、その結果を取得することができます。KineFXリギングフレームワークでは、リグの動作であるリグロジックを表現するためにグラフが使用されます。APEXでは、リグロジックをプロシージャルに構築し、ネットワークの後の時点でグラフを評価(実行)することができます。この遅延評価の考え方により、リグロジックとリグ評価を切り離すことができ、パフォーマンスが大幅に向上します。

  • 新しいAPEX Autorig Component SOPにより、ユーザーはFK階層、IKジョイント、ボーン変形などの機能を追加したビルド済みのリグコンポーネントを使用して、キャラクタ全体のリグをビルドすることができます。

目次へ戻る

1.3 Procedural motion & Physics

  • Ragdoll Solver 2.0 SOPは、剛性やモーターなどのジョイント・プロパティをよりシンプルかつ柔軟に設定でき、入力アニメーションのローカルまたはワールド・トランスフォームとのマッチングをサポートします。
  • Ragdoll Collision Shapes 2.0 SOPは、ラグドールRBDシミュレーションで使用するKineFXスケルトンのコリジョン形状を作成します。
  • 新しいConfigure Joint Limits SOPは、ラグドールRBDシミュレーション、フルボディインバースキネマティクス、ポージングなど、さまざまな目的でジョイントリミットを設定するために使用できます。

目次へ戻る

1.4 Input/Output

  • リギング用の新しいDem Bones Skinning Converter SOPは、Smooth Skinning DecompositionアルゴリズムをKineFXツールセットに統合します。このノードを使用すると、一連のポーズからスキニングのウェイトを生成し、ジョイントデフォームSOPで使用するときにジオメトリが変形できるようになります。
  • ROP FBX Animation OutputROP FBX Character Output SOPにExport Presetドロップダウンメニューが追加され、Compatibilityタブのパラメータを特定のDCCへのエクスポートに理想的な値に設定できるようになりました。
  • FBX Skin Import SOP で、新しい[Compute MikkT Tangents]パラメータがタンジェントアトリビュートを事前生成し、タンジェント情報を持たないアニメーション FBX キャラクタをインポートする際のビューポート再生パフォーマンスが向上しました。

目次へ戻る

1.5 サンプルファイル

Luchador & Chicken:
Od StudiosがSideFXと協力して作成しました。これらのファイルは、新しいAPEXシステムを使用したキャラクターリギングのプロセスを実演するためにデザインされています。土台のセットアップから、オートリグコンポーネントでの作業、プロシージャルスキニングの習得まで学ぶことができます。



Electra Rig:
APEX リギング ツールを使用して、Electra キャラクタがどのようにセットアップされたかを学びましょう。このシーン ファイルでは、キャラクタ エレメントを整理し、再利用可能なリグ コンポーネントを使用して作成し、アニメーター フレンドリーなシーンを組み立てる基本を紹介します。



KineFX/APEX Workflow:
ビデオで実演されたKineFX/APEXワークフローを示しています。このセットアップは、モーションキャプチャーをElectraにリターゲットし、モーションパス上にチキンを追加します。これは、KineFXリターゲットワークフローとAPEXを使用したキーフレームアニメーションを組み合わせる方法を示しています。

目次へ戻る

2. Muscles and Tissue

  • Franken Muscle SOP は、1 つの筋肉ジオメトリ内に複数の [muscle_id ]アトリビュートを割り当てます。これにより、複数の筋肉ジオメトリから構成される解剖モデルを扱う場合と同等の結果を得られます。
  • Franken Muscle Paint SOPでは、[muscle_id ]アトリビュートの作成用のマスクをインタラクティブにペイントすることができます。
  • Muscle Paint SOPに、Muscle-to-Muscle Slide Rate制約制御用の新しいペイント可能なアトリビュートオプションが追加されました。

機能改善について:
Vellum Solverは、Tetrahedral Stretch制約をVolume Preservationを有効にして連成解を行うようになり、以前のバージョンのように両方の制約を順次解くのではなく、同時に解くようになりました。その結果、解法が高速化され、体積がより正確に保存され、極端な変形を行った場合に発生するアーチファクトが軽減されました。これに伴い、ほとんどの筋肉シミュレーションの見た目が改善されました。

目次へ戻る

3. Feathers

3.1 概要

Featherシステムについて:
Houdiniの全く新しい羽毛システムは、GPUを搭載したツールの完全なセットで、非常にリアルな羽毛を効率的に作成することができます。フリーハンドでカーブを描くだけでなく、リファレンスイメージを使用して、翼の羽、装飾的な羽、ダウン、カバーなど、さまざまなタイプの羽毛のフルセットを作成することもできます。

羽毛の構成パーツと概念について:
下の図は、羽毛のさまざまなパーツを示しています。現実の羽毛の構造やパーツの名称は、HoudiniのFeatherシステムの解説でも登場することがあります。



Calamus:
Shaftの空洞部分によって鳥の皮膚や骨に羽毛が取り付けられています。

Shaft:
羽根を支える中央の長い軸です。

Vane:
Shaftから伸びる細かな毛の部分です。両サイドのVaneの長さはほぼ同じです。

Barb:
Shaftから伸びる一本一本の繊維のことです。それぞれのBarbには小さなShaftと小さなBarb(Barble)があります。

Barbule:
それぞれのBarbの中心軸から伸びる小さなBarbです。

Barbicel:
BarbuleにはBarbicelと呼ばれる小さな鉤(カギ)があります。

Afterfeather:
綿毛のような下部のとげの部分です。カールしているように見えます。

羽毛によっては、切り込みや膨らみといった構造も見受けられます。
ただし、BarbicelとBarbuleは、現状のFeatherシステムで生成可能な羽毛の形状には含まれていないことにご注意ください。

目次へ戻る

3.2 ノード一覧

Feathreノード機能/役割
Feather Barb Tangents SOPBarbによって分割されたサーフェスのタンジェント空間情報を計算します。
Feather Barb Transform SOPBarbベクトルをフェザー空間とオブジェクト空間の間で変換します。
Feather Clump SOPBarbの塊部分を分割します。
Feather Deform SOP他の羽毛やポリゴン・サーフェスを使用して羽毛を変形させます。
Feather Deintersect SOP 交差している羽毛を分離します。
Feather Instance Pool SOP 入力曲線とそのテンプレート・ウェイトに基づいてフェザー・プリミティブを生成します。
Feather Match Uncondensed SOP凝縮されていない羽根から単一カーブの羽根にアトリビュートを転送するために使用されます。
Feather Minimum Distance SOP他のジオメトリ上の各Barbポイントに最も近い点を見つけます。
Feather Noise SOP凝縮されたフェザーのBarbノイズを加えます。
Feather Normalize SOPフェザーの長さを正規化し、まっすぐにします。
Feather Primitive SOPフェザープリミティブ(GPUスキニング付きエージェントプリミティブ)を生成します。
Feather Ray SOPフェザー上の各ポイントについて、他のジオメトリ上の最も近いポイントを見つけます。
Feather Resample SOP後処理としてShaftとその付属Barbのポイント数を制御する。
Feather Shape Organize SOP緩く描かれたカーブを名前別に整理し、Shape オペレータから Feather Template オペレータへの入力に適した状態にするために使用します。
Feather Surface SOPフェザープリミティブをポリゴンサーフェスに変換します。
Feather Surface Blend SOP羽をポリゴンメッシュの曲率に沿わせるために使用します。サーフェスジオメトリに基づいて羽のジオメトリを変形し、より自然でリアルな外観を実現します。
Feather Template Interpolate SOP異なる形状のフェザー間のSOPブレンドを補間します。ベースの羽毛の種類が非常に少ない場合に便利です。
Feather Template from Shape SOPカーブからフェザーオブジェクトを作成し、BarbやShaftの基本的な調整を行うことができます。
Feather Uncondense SOPフェザーカーブを入力とし、個々のBarbに対して個別のカーブプリミティブを生成します。
Feather Utility SOPフェザーカーブの操作に役立つ関数を集めたものです。
Feather Visualize SOPビューポート内の羽毛の視覚化を変更できます。
Feather Width SOPShaftとBarbのカーブ幅を設定します。
関連ノード 機能/役割
Guide Groom SOP羽毛を描いたり配置するためのノードです。
Guide Process SOPガイドまたは毛を修正します。

目次へ戻る

3.3 サンプルファイル

Eagle Feathers:
Houdini 20 eagleのシグネチャです。このサンプルは2つのファイルがあります。1つ目は、ベースとなる羽の作成と配置です。これはeagle_feathercreation.hipにあり、次にeagle_render.hipは、羽のパッチの様々なキャッシュが組み立てられ、Karma XPUまたはCPUでレンダリングするためのLOPに取り込まれます。カメラとライトも含まれており、これらはHoudini 20リリースのマーケティング資料用のレンダリング作成に使用されました。



Splashscreen Feathers:
Houdini20の起動ウィンドウイメージのシーンファイルです。

目次へ戻る

4. Crowds

  • SOP Crowds:
    新しいSOP Crowds MotionPathツールセットでは、群衆全体を再シミュレーションすることなく、少数のエージェントのモーションパスやアニメーションを素早く変更することができます。
  • Sticky Collisions:
    Crowd StateCrowd Trigger DOPの新しいSticky Collisionsの設定で、特定のエージェントを “Sticky “に設定します。Sticky Collisionsを使うと、エージェントに衝突したオブジェクトは、衝撃の強さとエージェントにすでにくっついているオブジェクトの数に応じて、エージェントにくっつくことができます。Sticky Collisionsは、Bullet Solverの機能でもあります。
  • Agent Layer SOPは、新しい[Set Collision Layers]パラメータで、エージェントの衝突レイヤーのリストに新しいレイヤーを割り当てることができるようになりました。
  • Agent SOPSOP Import LOPに、群衆エージェントのUsdSkel Dual Quaternionスキニングのサポートを追加しました。USD23.02でUsdSkel Dual Quaternionスキニングが追加されました。線形とデュアルクォータニオンをブレンドしたスキニング方法(デュアルクォータニオンと線形をブレンドしたJoint Deform SOPスキニング方法)は、現在USDではサポートされていないことに注意してください。
  • Crowd State DOPの新しい[Enable Looping]パラメーターは、このステートで再生されているクリップをループさせるかどうかをコントロールします。

Zombie Crowds:
このプロジェクトでは、ゾンビ群衆シミュレーション全体のセットアップ方法を示します。スケルトンをセットアップし、利用可能なモーションキャプチャでリターゲットする方法、エージェントのシミュレーションをセットアップする方法、布と髪のレイヤーを追加する方法、そして最後に群衆のポストシミュレーションのための布と髪のシミュレーションをセットアップする方法を含みます。ここで使用される新しいツールはスティッキーコリジョンです。

目次へ戻る

5. Solaris

5.1 Interface

  • ビューポートの右側にあるライティングボタン/アイコンは、シーンの特定の技術的側面を検査するためなど、より多くの機能を備えています。これにより、ライティングアーティストは、どの位置から光が来るのか、またはAOVに光が表示されない原因を確認できるようになりました。
  • Disable Materialsが改善されました。オンにすると、マテリアルがビューポートレンダーに表示されなくなります。
  • Geometry Spreadsheetがより柔軟になりました。SOP Modify LOPなど、LOPとSOPのどちらで作業しているかに応じて、UIがScene Graph TreeとGeometry Spreadsheetの間で切り替わるようになりました。SOP Modify LOPの内部で、Hide Other Objectsをオンにすると、USDシーンのSOPバージョンで再クックせずに作業できるようになります。
  • LOP Lights & CamerasシェルフにKarma Physical Skyが追加されました。
  • Scene Graph Treeの改善:
    ・フィルター入力フィールドが常にペインの下部に表示されるようになりました。
    ・フィルタ適用時に、異なる見出しが表示されるようになりました。
    Scene Graph Layers は、AttribSpecs と同様に、各 SdfLayer のScene Graph PrimSpecs と VariantSpecs を表示できるようになりました。
  • Render Gallery:
    ・各ギャラリーがネットワークに関連づけられるようになりました。スナップショットを右クリックすると、メニューが表示されます。メニューから[Revert Network to Snapshot]を選択すると、スナップショットの撮影に使用したネットワークに戻ります。ライトやマテリアルの微調整に便利です。
    ・スナップショットの名前を変更できるようになりました。
    ・スナップショットを取得すると、レンダーギャラリーは、ビューポートに現在表示されているAOVだけでなく、すべてのAOVをキャプチャするようになりました。
    ・レンダーギャラリーがスナップショットを適切にキャプチャし、非スクエアピクセルのアスペクト比を持つビューポートイメージからサムネイルを生成するようになりました。
  • 新しいShow/Hide snapshot stripアイコンは、ギャラリーストリップとビューポートでレンダーギャラリーの制限されたバージョンを開きます。このボタンはビューポートの左下にあります。フル機能のレンダーギャラリーは、New Pane Tab Type ▸ Solaris ▸ Render Galleryからペインとして利用できます。
  • Deasktopメニューから新しい [SolarisLookDev]デスクトップを使用できます。
  • Scene Graphのメニューが再編成され、より使いやすくなりました。このメニューを開くには、Scene Graph ツリーの任意のエントリを右クリックします。
  • Edit Primitive with New Nodeは、選択されたノードに新しい編集ノードを自動的に追加し、接続します。
  • Jump to existing editsは、メニューから編集したノードのリストが表示されます。項目をクリックすると、該当するノードに直接ジャンプできます。
  • Geometry Spreadsheetペインの新しい Editor Nodesタブには、現在のセッションで編集されたすべてのノードが表示されます。エントリを右クリックし、Jump to Nodeを選択すると、ネットワーク全体を検索することなく、直接そのノードに移動してパラメータを確認できます。
  • Show layer details as treeボタンが、Scene Graph Layersペインに配置されました。ボタンをクリックすると、USD シーンの細かいデバッグのために、レイヤーの仕様とすべての詳細を見ることができます。

目次へ戻る

5.2 Render statistics

Render Statistics(レンダリング統計情報):
Houdiniには、進行中および終了したレンダリングの統計情報を視覚化する方法が追加されました。詳しくはレンダリング統計情報をご覧ください。

  • Render GalleryまたはMPlayのボタンをクリックすると、メモリ使用量、最初のピクセルまでの時間、シェーダー呼び出しなどの情報を含むレンダリング統計サイドバーが表示されます。
  • [renderstatsreport]ユーティリティは、レンダリングされた EXR ファイルから抽出された統計情報を一覧表示する HTMLレンダー レポートを生成します。
  • renderstatsoverlayユーティリティは、レンダリング統計を焼き込んだ(おそらくリサイズされた)JPGまたはPNGを生成します。

目次へ戻る

5.3 新機能/新ノード

  • 新しいMerge Point Instancers LOPが追加されました。Point instancer primでは、ジオメトリの各ポイントは、ビューまたはレンダリング時に、インスタンサと「プロトタイプ」の関係を持つプリムのジオメトリのインスタンスで置き換えられます。LOP を使用すると、複数のポイントインスタンサを効率的にマージできます。
  • RBD Destruction LOPを使用することで、レンダリング時にグラフを呼び出してピースをトランスフォームできます。このノードは基本的に、Transform Piecesのセットアップを行うレンダリングタイムのプロシージャルです。これにより、メッシュの残りの位置と、ピースのアニメート・トランスフォームを表すポイントを保存するだけで済みます。この結果、ディスク上のフットプリントが小さくなります。
  • 新しいGeometry Clip Sequence LOPにより、value clipの保存作業が簡単かつ高速になりました。value clipを使用すると、大きなデータを複数のファイルに分割できます。value clipを使用する場合は、このノードを最初に選択する必要があります。
  • USD Render ROP が、USDファイルだけでなく、レンダリング後の一時 USD ファイルと VDB ファイルの両方を削除するようになりました。
  • Test Geometry: Shaderball LOP は、いくつかのマテリアル/テクスチャマップの修正とともに、新しい USDシェーダボールをデフォルトで使用するようになりました。レガシーシェーダーボールは現在も使用可能です。
  • Karma AOV 2.0は、マテリアルからAOVを作成するための合理化されたワークフローを提供します。このワークフローでは、アクセサリノードが不要になり、Karma AOV VOPはMaterial_Outputs_and_AOVs Subnet Output VOPの入力に直接接続されます。
  • デフォルトでは、Karma AOV は RenderVar を作成し、Scene Graph Treeの materials ブランチに追加されますが、Render Product ブランチにも参照されます。Karma Render Settings LOP が AOV や RenderVar を “see” した場合、自動的に追加されます。AOVは出力として追加されるので、Karma AOV LOPの入力を有効なノードに接続すれば、RenderVarsは更新されます。

目次へ戻る

6. Karma

6.1 Karma CPU

  • インスタンス化可能なリファレンスに対してライトリンクのサポートを追加しました。
  • Object Velocity Blur の代わりに、[Instance Velocity Blur]と[Instance Motion Samples]パラメータを使用して、インスタンスのモーション ブラーを制御できるようになりました。パラメータは、Render Geometry Settings LOPにあります。
  • Karma CPU が、VEX シェーダーを実行する際の gatherステートメントで samplesキーワードをサポートするようになりました。
  • Karma CPU のIndirect Guidingを改善しました。以前のバージョンは、True Caustics、Dispersion、Occluded Objectsのあるシーンで大きなノイズを発生させるIndirect Guidingを使用していました。新しいバージョンは、例えば、True Causticsを持つ窓や水面を通るパスを見つけることができます。新しいIndirect Guidingを使用するには、Karma Render Settings LOPに移動し、Advanced ▸ Samplingタブを開きます。Secondary Samplesセクションを展開し、Enable Indirect Guidingをオンにします。

目次へ戻る

6.2 Karma XPU

  • Karma XPUがベータ版からゴールド版に移行しました。このマイルストーンを記念して、Karmaのロゴ変更されました。
  • Karma XPUでCryptomatteが利用可能になりました。
  • Karma XPUでDeepイメージが利用可能になりました。
  • Karma XPUで、PrimVarsを使用して、インスタンスごとにシェーダープロパティを変化させることができるようになりました。
  • Light Path Expressions(LPE)を、シャドウマット、アルファチャンネル、 ホールドアウトなど、Karma CPUとよりマッチするように再構築 しました。
  • 合成された Vector VDB フィールドを、手動でVectorフィールドに変換することなくレンダリングできるようになりました(例えば、  VDB Vector from Scalar SOPを介すことができます)。合成Vector VDBフィールドは、接尾辞「_x、_y、_z」を含む名前を持ちます。
  • Karma XPU がライトフィルタシェーダグラフに対応しました。ライトフィルタを使用すると、ジオメトリにイメージを投影したり、GelやGoboを使用してクリエイティブなライティング効果を得ることができます。
  • ポリゴンメッシュのバックフェイスカリングがKarma XPUで使用可能になりました。
  • Karma XPUで、背景とホールドアウト用のBackground Plate LOPが使用可能になりました。
  • Albedo AOVがサポートされました。
  • AOVフィルターモード(min、max、accumulateなど)がサポートされました。
  • utility values、pixel samples、heatmapなどの追加AOV出力が可能になりました。
  • ロード中にテクスチャがタイル化されるようになりました。これにより、ロード時間が短縮され、メモリ消費量が少なくなり、テクスチャをキャッシュするためのディスク容量が少なくなりました。
  • ボリュームフィールドがオンデマンドでロードされるようになり、メモリ使用量が削減されました。

XPU Bubble Wrap:
Content LibraryからXPU Bubble Wrapファイルをダウンロードして、Karma XPUによるThin-Walledジオメトリのレンダリング例をご覧ください。

目次へ戻る

6.3 新機能/新ノード

  • 新しい Clone Control Panel は、マルチショット・マルチアセット管理システムへの第一歩です。クローンは、異なるHoudiniセッションを同期させる方法であり、HIPファイルが変更され、レンダリングが更新される。クローンプロセスは、完全な非グラフィカルHoudiniプロセスを使用してLOPネットワークをクックし、インタラクティブHoudiniセッションのビューポートでライブレンダリングのように画像をレンダリングします。その後、画像はインタラクティブHoudiniセッションに返送され、表示されます。
  • Karma AOV VOP 2.0では、マテリアルからAOVを作成するワークフローが改善されました。新しい方法では、アクセサリノードが不要になり、RenderVarsが自動的に設定されます。
  •  Render Gallery の新しいRender Statisticsセクションには、メモリ情報、最初のピクセルまでの時間、シェーダー呼び出しなど、さまざまな情報が表示されます。
  • ビューポートの設定とKarma Render Settings LOPの間にレンダーデリゲートの不一致がある場合、ビューポートの左上隅に警告が表示されます。これは、Karma CPUとKarma XPUは全く異なるレンダーエンジンであり、異なる結果を生成するという事実に注意を喚起するためのものです。
  • 新しいHoudini Procedural: Ocean LOPを使用すると、プリシミュレートされたbgeo.scスペクトルファイルから、泡や気泡を含む高解像度の統計スペクトル波(PhilipsとTMA)を効率的にレンダリングできます。
  • 新しい Houdini Procedural: Feather LOP は、レンダリング用の高解像度の羽毛を作成します。このノードはHoudiniの新しいFeather Systemの一部です。
  • 新しいKarma Physical Sky LOPでは、太陽高度と方位角、または位置、日付、時刻から正確な空の色をシミュレートできます。
  • Light LOPのポイントライトに新しいアクティブ半径パラメータが追加されました。この半径の外では、ライトの効果はありません。
  • Karma CPUおよびXPU用の新しいKarma Room Map VOPは、視差マッピングを使用して、部屋の画像を平面に投影します。これにより、3次元のインテリアのような印象を与えます。例とセットアップを含む完全なワークフローガイドは、こちらをご参照ください。
  • 新しいKarma Room Lense VOPは、Karma Room Map VOPで使用する3Dルームのスライスで十字型のインテリアマップをベイクすることができます。
  • 新しいMtlX Circles2D VOPノードで、高度にカスタマイズ可能な円/リングパターンを作成できます。
  • 新しいKarma Hex Tiling VOPは、単一のマップを使用して大面積のテクスチャを作成する際に、目に見える継ぎ目や繰り返しを回避します。
  • 新しいKarma Fur VOPシェーダは、非常にリアルな結果をもたらすメデュラをサポートします。メデュラは毛の内側の核で、太い毛や毛皮の構造的な特徴です。メデュラのサポートにより、毛の光散乱と光減衰を正確にコントロールできます。
  • Nested dielectricsはKarma XPU で動作するようになり、例えば、ボトル の中の水を物理的に正しくレンダリングできるようになりました。
  • OCIO 2.0が実装されました。オープンソースのOCIOカラーマネジメントシステムが完全に実装され、HoudiniのKarmaにおけるリニアワークフローのACEScgもサポートされています。

目次へ戻る

7. Modeling and Geometry

  • Measure Thickness SOPを使用することで、入力オブジェクトのポイント位置での厚さを測定できます。ポイントからの距離で推定するため隣接するポリゴンの角度が大きい時、厚さは不正確になります。
▲Measure Thickness SOP
  • Attribute Blur SOPに、Attribute Blur SOPに元の入力とブレンドするためのパラメータが追加されました。
▲ Attribute Blur SOP
  • Flatten SOPを使用することで、3Dジオメトリ上の点を任意の2D平面に移動して平坦化できます。移動させるためにアトリビュートを使うことで、膨らませるような表現もできます。
▲ Flatten SOP
  • テストジオメトリとして、 ErectraCapybara が追加されました。
▲ Test Geometry: Electra(左)とTest Geometry: Capybara(右)
  • 新しい Linear Solver SOP は、 連立一次方程式を解きます 。行列とベクトルのアトリビュートを使用して、 線形システムの解、最小二乗解、行列分解などの一般的な数値線形代数演算をジオメトリアトリビュートとして出力します。
  • ポイントクラウドを処理するためのノードがいくつか追加されました。これらは3Dスキャナなどから入力した面を持たない独立した大量の点群データからソリッドモデルを作成するのに役立ちます。
  • Point Cloud Normal SOPを使用することで、ポイントクラウドの法線ベクトルを計算し、それらに一貫した方向を与えることができます。面を持たない独立した点群を元に法線を推測して計算します。
▲ Point Cloud Normal SOP
▲ Point Cloud Reduce SOP
  • Point Cloud Surface SOP で、 ポイントクラウドから面を構築します 。ノーマルアトリビュートNが必要で、存在しないときはPoint Cloud Normal SOPでNを作っておく必要があります。面を持たない独立した点群から面を構築することができます。
▲ Point Cloud Surface SOP
  • Quad Remesh SOP で、任意のメッシュを構造化された四角形メッシュに変換できます。これはまだβ版で開発途中のバージョンになり、将来的に機能が変更される可能性があります。
▲ Quad Remesh SOP
  • 一つのCurve SOPの中でPolygon、Nurbs、Bezierの違う種類のカーブを混在させることができるようになりました。カーソル位置のカーブの種類を表示させることができます。 Lキーで表示/非表示を切り替えることができます 。 Editモード時に任意の距離に応じたソフトトランスフォームができるようになりました 。 HUDにポイントの座標が表示されてスライダーで移動することができます 。
▲ Curve SOP
  • Draw Curve SOPのCache Strokesでカーブをメモリにキャッシュできるようになり多数のStrokeを扱うときのパフォーマンスが向上しました。Clear Stroke Memory で全てのキャッシュをクリアできますがカーブを個別に削除することはできません。SnapShotでキャッシュを外部ファイルに保存することができます。Clear Stroke Memory すると外部に保存した段階まで戻ります。
▲ Draw Curve SOP
  • Group Invert SOPは、 既存のグループに含まれないコンポーネントから新しいグループを作成します 。
  • Poly Hinge SOP で、任意のエッジやピボットラインを中心に面を回転させて任意の分割数で押し出すことができます。
▲ Poly Hinge SOP
  • Circle from Edges SOPで、Scaleで円のスケールを変えることができるようになりました。
▲ Circle from Edges SOP
  • Texture Mask Paint SOP を使用してモデルにペイントすることで、UV上にマスクテクスチャをペイントすることができます。このマスクテクスチャは詳細なマスクを描画できるように、ポイントアトリビュートではなく2Dボリュームになっています。 2DボリュームはHeightField Outputノードを使用してテクスチャイメージ ファイルとして出力できます 。
▲ Texture Mask Paint SOP
  • Scatter in Texture Mask SOP を使用して、 Textureマッピングの濃淡やTexture Maskを元にモデル上にポイントを散布できます。
▲ Scatter in Texture Mask SOP
  • Attribute from Map SOPでSourceにFile以外に2Dボリュームを入力として使用するための新しいオプションが追加されました。
▲ Attribute from Map SOP
▲ Mask by Feature SOP
  • Topo Transfer SOPは、オプティカルフローを使った新しいTopo Transferのワークフローのためのノードです。関連ノードがいくつかあります。
  • Topo Flow SOPは Topo Transfer SOPのリトポロジーワークフローをサーフェスのサイズと形状だけでなく、 テクスチャー画像の違いを計算してサーフェスを変形させることができます。
  • Texture Optical Flow SOPは連続する2枚の被写体の動きの違いを画像処理により追跡して、方向ベクトルを含む2次元ボリュームとして出力します。例えば表情の違いなどわずかなバリエーションの違いである場合に最適です。
▲ Texture Optical Flow SOP
  • Texture Feature SOPは2Dボリュームの画像内の特徴点を画像処理により識別します。このノードは2Dボリュームの画像内の「目立つ」特徴点を見つけてポイントを配置します。
  • Topo Flow Sample SOPは、画像ファイル内の個別の特徴点を画像処理により識別します。 このノードは画像ファイル内の「目立つ」特徴点を見つけてポイントを配置します 。
▲ Topo Flow Sample SOP
▲ HeightField Blur SOP
  • ボリュームデータについて、ベクトルおよび整数ボリュームを作成できるようになりました。
▲ 保持された数値の比較
  • VDB Rasterize Frustum SOPは、 ポイントクラウドから任意の半径でラスタライズされたDensityボリュームを作ることができます 。ポイントアトリビュートを元にいろいろな種類のボリュームをラスタライズできます。
▲ VDB Rasterize Frustum SOP
  • VDB from Polygon SOPにPreserve Holesパラメータが追加されました 。これにより穴を適切に保持し、小さなギャップを閉じる際のパフォーマンスを向上させました。
▲ VDB from Polygon SOP

Hotkey Bindings:
Keymapファイルでホットキーバインディングに [ 修飾キー ] + [ 文字キー ] を使用するようになりました。これは特に Shift キーを使った記号キーのバインディングに影響があります。例えば、@ キーにバインディングされていたものはShift + 2 にバインディングされます。今まではJISキーボードで Shift + 2 が @ ではないので、Topobuild SOP のように Shift + 2 を使うノードで問題がありましたが、H20からは Shift + 2 を問題なく使えるようになります。 今までJISキーボードを使っていてHotkeyをカスタマイズしていた場合には注意が必要です 。

目次へ戻る

8. Clouds

8.1 モデリング

  • Cloud Shape Generate SOP は、積乱雲のような形状をモデル化するために使用されるプリミティブ球を作成します。
  • Cloud Shape from Line SOPは、ラインプリミティブの周りに積雲のような形状をモデル化するために使用されるプリミティブ球を作成します。
  • Cloud Shape from Polygon SOPは、積乱雲のような形状をモデル化するために使用される、適応サイズのプリミティブ球でポリゴンメッシュを埋めます。
  • Cloud Shape from Intersection SOP は、ジオメトリの交点で積雲のような形状をモデル化するために使用されるプリミティブ球を作成します。
  • Cloud Shape Replicate SOPは、既存のプリミティブ球の周りに積雲のような形状をモデル化するために使用されるプリミティブ球を生成します。
  • Cloud Billowy Noise SOP は、雲のようなビローノイズをフォグボリュームに適用します。
  • Cloud Wispy Noise SOPは、薄い羽のような細かい変位ノイズをフォグボリュームに適用します。
  • Cloud Clip SOPは、クリッピング平面を使用してフォグボリュームを半分に分割します。

ワークフローについて:
モデリングワークフローやノードの使い方に関する詳細につきましては以下のページに記載がございますので、合わせてご参照ください。
▼Cloud modeling
https://www.sidefx.com/docs/houdini20.0/model/cloud.html

目次へ戻る

8.2 シェーダー

  • Karma Pyro Shader VOPは、プロダクションクオリティの煙、雲、火、爆発シェーダで、柔軟性を高めるために他のノードで構成されています。

以下のVOPノードはKarma Pyro Shader VOPの構成要素です。

シェーダーノード機能
Karma Pyro Smoke Color VOP 煙の陰影を制御するための散乱と吸収の生成します。
Karma Pyro Fire Color VOP火の陰影を制御するための色値を生成します。
Karma Pyro Scatter Color VOP 爆発の陰影を制御するための色値を生成します。
Karma Pyro Fire Emission VOP 火の陰影を制御するためのエミッションを生成します。
Karma Pyro Scatter Emission VOP爆発の陰影を制御するためのエミッションを生成します。
Karma Pyro Volume Mask VOPボリュームシェーディングのために発光をスケールするために使用できるカラーマスク値を出力します。
  • Sky Box SOP は、ボリューメトリッククラウドを作成します。

空を作る方法について:
以下の「How to create a sky」のページを合わせてご参照ください。
▼How to create a sky
https://www.sidefx.com/docs/houdini20.0/model/skyfield.html

目次へ戻る

8.3 ノイズタイプ

  • Cloud Noise VOPは、カスタムノイズフラクタルで、フラクタル反復ごとにノイズを歪ませ、雲生成のための、よりビローな見た目のノイズを提供します。
  • Fibratus VOPは2Dの繊維状の雲模様を生成します。
  • Floccus VOPは、2次元的な羊毛の束のような雲のパターンを生成します。
  • Fractus VOPは、2次元的なそぼろ状の雲のようなパターンを生成します。
  • Undulatus VOPは2Dの波のような雲パターンを生成します。

目次へ戻る

8.4 サンプルファイル

Skybox Cloud Types:
このシーンファイルでは、新しいSkyboxツールを設定してさまざまな雲を作成し、ビューポートに表示する方法を示しています。



Animated Cloud:
このhipファイルは、Houdini 20で利用可能な新しいSkybox SOPを設定し、雲の動きをシミュレートする大きな雲のフィールドを作成する方法を示しています(3000 x 3000)。Karma Cloud ShaderとKarma Physical Skyライティングを使用してKarmaでレンダリングされます。



Cloudscape:
このシーンファイルは、大きな雲場(10,000 x 7,500)を作成するためのSkybox SOPの設定方法を示しています。このシーンには、雲海の上をパンするカメラがあります。このシーンは、Karma Cloud Shader と Karma Physical Sky を使って Karma でレンダリングするように設定されています。



Karma Cloud Bake:
このプロジェクトでは、Karma XPUを使用して数秒でレンダリング用のクラウドをセットアップする方法を紹介します。



Billowy Cloud:
このシーンファイルは、2つのレンダリングセットアップを含む、シンプルなビロー雲を作成する方法を示しています。



Cloud Shader:
このシーンファイルは、MaterialXを使用した標準的な雲シェーダの基本コンセプトを示しています。シーンファイルは雲のボリュームを生成せず、シーンファイル内に格納されています。



Billowy Cloud Generator:
このシーンファイルでは、シンプルな雲を生成する方法を示しています。雲は並べられ、900以上のフレームにわたって、日没から日没まで、カルマの物理的な空がアニメーションされます。


目次へ戻る

9. Pyro

  • 流体に重力を適用するための新しいパラメータを追加しました。 重力は密度情報に基づいてスケーリングすることができます。 これにより、流体の密度の高い領域がより速く降下するようになります。これは塵や埃をシミュレートする際に便利です。これらのパラメータは、SOPDOPの両方で使用できます。
  • Gas Match Field DOPの[New Match Field if It Already Exists]パラメータは、参照先のフィールドがすでに存在する場合にその参照にマッチします。存在しないフィールドを作成し、すでに存在するフィールドはそのままにしたい場合は、このオプションをオフにしておきます。
  • Pyro Solver SOPにHeight Fieldオプションが追加され、Boundary CollisionsがGround Planesに名称変更されました。デフォルトでは、煙はオープンコンテナ内で動作し、最大境界に達すると消滅します。これにより、煙が通過できない暗黙の壁を追加し、通常のコライダーよりも強力なコリジョン境界を形成することができます。
  • Pyro Source Pack SOPを使用したPyroソーシングで、インスタンスポイントのVelocityアトリビュートをVectorフィールドに追加できるようになりました。
  • 新しいGas Reset Inactive DOPは、ステンシル・フィールドに従って非アクティブなエリアのフィールドをバックグラウンド値にリセットします。

目次へ戻る

10. FLIP fluids

SOPベースのWhitewaterシステムについて:
新しい SOP-based whitewater システムは、Houdini 19.5 で導入された SOP FLIP fluid を強化したものです。このシステムはスケールに依存せず、パーティクル数を考慮することなくホワイトウォーターの物理的な量をコントロールできます。低解像度で作業して適切な設定を見つけ、その値を高解像度パスで再利用できるようになりました。このSOP whitewaterシステムは、foam(泡沫)、spray(水しぶき)、bubbles(気泡)の同時作成に対応しています。

  • 新しい Whitewater Source SOP は、Surface と Velocity フィールドを入力として、Emission Field を作成し、ホワイトウォーターパーティクルを生成します。CurvatureやAccelerationなどのパラメータにより、ホワイトウォーターが出現する場所を正確に決定できます。
  • 新しいWhitewater Solver SOPは、入力されたEmission Fieldから物理的に正しいSpray、Foam、Bubblesをシミュレートします。Whitewaterは、制御可能なリアルな流体のような挙動を再現するために、FoceとVelocityノイズを介して影響を与えることができます。
  • 新しいWhitewater Post Process SOPは、Whitewaterシミュレーションをレンダリングするための処理を行います。このノードでは、シミュレーション後にWhitewater Solverの出力を変換することができます。具体的には、パーティクルの年齢、境界面からの深さ、コンテナまでの距離などの他のアトリビュートに基づいて、pscaleとdensityアトリビュートを再定義することができます。
  • 新しいFLIP Volume Combine SOPにより、異なる解像度のFLIP fieldsを組み合わせることができます。解像度の異なる2つのFLIPシミュレーションから得られたfield(surface、velocity、pressure)を1つのfieldにブレンドすることができます。これは、低解像度シミュレーションのサブドメインを高解像度で再シミュレーションするFLIP up-resワークフローを使用する場合に特に便利です。
  • Remesh Bubbles SOPは、pscaleアトリビュートの点群上にBubbleメッシュ構造を生成し、 メッシュ同士が互いに押し合うように変形させます。このツールは、マグカップにコーヒーを注ぐような小規模な流体シミュレーションで気泡を作成するのに適しています。

Bubbles:
Content Library にあるファイルをダウンロードし、Remesh Bubble SOPを使用して、XPUでバブルシェーダを作る方法も合わせてご覧ください。

目次へ戻る

11. Oceans

Ocean Procedural:
新しいHoudini Procedural: Ocean LOPを使用すると、泡や気泡を含む高解像度の統計的スペクトル波(PhilipsおよびTMA)を効率的にレンダリングできます。また、プリシミュレートされたbgeo.scスペクトルファイルを使用し、効果的なダイシングのためにカメラを定義することもできます。シェーディングは、定義済みのサーフェスマテリアルとインテリアマテリアルで行うことができ、プロキシマテリアルは高速プレビューの作成に役立ちます。この新しい Houdini Proceduralでは、XPUやサードパーティのレンダラー(Arnold、Renderman、Redshift、vrayなど)で海をレンダリングすることもできます。

  • 新しいRipple Solver SOPは、雨滴による波紋や、水中を進むボートが作る船首波など、浅い水面を伝搬する波紋を作成するためのSOPです。詳細と基本的なワークフローについては、Ripple Solver (SOP)のページをご覧ください。

Capy Ripple Solver:
Content LibraryからCapy Ripple Solverファイルをダウンロードして、アニメーションキャラクターにRipple Solverを適用して、キャラクターの肌の上を通過する衝撃波をエミュレートする方法をご覧ください。

目次へ戻る

12. Rigid body dynamics

  • Sticky collisions:
    RBD Configure SOPを使用してスティッキーコリジョンを作成して、ダーツボードにくっつくダーツや、移動中の乗り物に磁気アイテムなど、衝突するオブジェクトを永続的に取り付けることができるようになりました。スティッキーコリジョンはカスタムコンストレイントネットワークとRBD Bullet Solver SOPの両方で動作します。
▲Sticky collisions
  • RBD Material Fracture 3.0 SOP:
    材料の種類の中で、ガラスマテリアル オプションが「Flat Panes (平面)」または「Curved Glass(曲面ガラス)」の2種類から選択できるようになりました。フラット パネルは窓や鏡などの平らなジオメトリに適しており、曲面ガラスは車のフロントガラス、ボトル、大理石などの丸いオブジェクトに適しています。Flat Panes ははるかに高速であるため、デフォルトに設定されています。
▲ RBD Material Fracture 3.0 SOP
▲ Flat Panes(RBD Material Fracture 3.0 SOP)
  • RBD Group Constraints SOP:
    アンカーされたRBDピースのグループメンバーシップに応じて、コンストレイントプリミティブにグループを作成します。なお、この機能はこの機能はRBD Constraint PropertiesノードとCone Twist Propertiesノードにも組み込まれており、そちらでも同じオプションを使用できます。
▲ RBD Group Constraints SOP
  • RBD Destruction LOP:
    グラフを呼び出してレンダリング時にピースを変換できます。このノードは、変換ピースのセットアップを行うためのレンダリング時のプロセスをセットアップします。これには、メッシュの残りの位置と、アニメーション化されたピースの変換を表すポイントのみを保存する必要があるため、ディスク上のフットプリントが小さくなります。
▲ RBD Destruction LOP
  • RBD Cone Twist Constraint Properties SOP:
    入力コンストレイントジオメトリにアトリビュートを作成して、Bulletコーンツイストコンストレイントを記述します。
    ノード自体のグローバルパラメータを直接編集するかコンストレイントのアトリビュートを個別に編集することにより、ビューポートでコンストレイントをインタラクティブに編集できます。このノードには、回転制限、ねじれ軸、移動範囲の指定など、多くの高度なオプションが用意されています。
▲ RBD Cone Twist Constraint Properties SOP
  • Find Instances SOP:
    同じジオメトリ部分のインスタンスを見つけて、パックされたジオメトリ インスタンスに置き換えます。 ジオメトリを分析して、一致するトポロジを持つ名前付きピースを見つけ、それらをパックされたジオメトリインスタンスに置き換えます。ポイントとプリミティブの数が同じでボリュームが一致するピースは、ユーザー定義の属性値によって比較されます。なお、ポイント数とトポロジはピース間で一致することが期待されるため、形状は同じでもトポロジが異なる 2 つのジオメトリを一致させることはできないことに注意が必要です。
▲ Find Instances SOP
  • RBD Find Instances SOP:
    同じジオメトリ部分のインスタンスを見つけて、パックされたジオメトリ インスタンスに置き換えます。ジオメトリまたはプロキシジオメトリを分析して、一致するトポロジを持つ名前付きピースを見つけます。識別された名前付きプロトタイプは、ジオメトリ ストリームとプロキシ ジオメトリ ストリームの両方で使用され、それに応じてインスタンス化されます。
▲ RBD Find Instances SOP
  • RBD Packed Object DOPの新機能:
    Min Activation Impulseパラメータを使用すると、衝突が発生したときに非アクティブなオブジェクトをアクティブなオブジェクトに自動的に切り替えることができます。このactivationignore属性を使用すると、特定のオブジェクトとの衝突によってオブジェクトがアクティブ化されるのを防ぐことができます。RBD Configureを使用して SOP でこれを実現するには、Activeを に設定し0、Min Activation Impulse をオブジェクトをアクティブにするために必要な衝撃の強さを設定します。
▲RBD Packed Object DOP

目次へ戻る

13. Vellum

  • Vellum Brush SOPの新機能:
    ピンを選択するための個別のハンドルが追加され、布を簡単に折りたたんだり、ドレープしたり、伸ばしたりすることができます。これは、セットドレッシングに特に役立ちます。
▲ Vellum Brush SOP
  • Crease/Ruffle 折り目/フリル:
    四面体メッシュの Vellum ブラシで機能するようになりました。
  • Vellum Solver(SOP&DOP)の新機能:
    「Default Thickness (デフォルトの厚さ)パラメータ」が追加されました。シミュレーションまたは衝突ジオメトリにpscale属性がない場合は、この値に設定されます。
▲ Vellum Solver(SOP&DOP)
  • Vellum Solver(SOP&DOP)の新機能:
    ボリューム保持が有効になっている四面体ストレッチ制約の結合ソルバを使用するようになりました。この場合、両方の制約が、以前のバージョンのように順番に解決されるのではなく、同時に解決されます。結果として得られるソルブはより高速になり、ボリュームがより適切に保持され、極端な変形時のアーティファクトが少なくなります。これにより、ほとんどの筋肉シミュレーションの外観が向上します。
▲ Vellum Solver(SOP&DOP)旧バージョンとの比較
  • ウィンド シャドウ:
    POP Mask from Wind DOPPOP Attribute Blur DOP 、およびPOP Wind Shadow DOPを使用して、DOP に風のシャドウを適用できます。 ウィンド シャドウを使用すると、衝突ジオメトリを使用して、風がベラム ジオメトリに影響を与えるのをブロックしたり(外部シャドウ)、ベラム ジオメトリを使用して、風がベラム ジオメトリの他の部分に影響を与えないようにブロックしたりできます(セルフ シャドウ)。
▲ 左側にはシャドウがなく、右側はシャドウがありる例
▲ 左側はシャドウがあり、右側はシャドウがない例
  • 風のシャドウを作成するための 3 つの新しいノードが追加されました。
    ※Vellum Solver SOPを使用して、SOP に風のシャドウを適用することもできます。
▲ POP Mask from Wind DOP
▲ POP Attribute Blur DOP
▲ POP Wind Shadow DOP
  • Vellum Rest Blend SOP & DOP:
    トランジションエフェクトを制御するための新しいマスキングオプションが追加されました。
▲ Vellum Rest Blend SOP & DOP
  • GPU メモリの使用量が大幅に削減され、四面体メッシュのグラフ カラーリングが高速化されました。
  • Vellum Fluid を64 ビットソルブで実行する機能が追加されました。

目次へ戻る

14. PDG

14.1 UI/UX

  • ワークアイテム情報パネルに、ワークアイテムが実行するクックの種類に関する詳細をリストする折りたたみ可能な [Cook Info]セクションが追加されました。
  • TOP のディスプレイオプションに、依存関係の Drawing Depth を指定するためのオプションが追加されました。
  • TOPグラフで異なるワークアイテムが選択された場合、work item info/middle-mouseパネルが自動的に更新されるようになりました。
  • 出力を削除するためのPDG file chooser dialogで、デフォルトでは絶対パスを表示する代わりに、$HIPや$JOBのような変数を含むようにパスを縮約されるようになりました。

目次へ戻る

14.2 TOP networks

  • TOPネットワークは、新しいローリング・チェックポイント形式を使用して、グラフの状態を.jsonファイルに定期的に保存および復元できるようになりました。
  • TOP Networksに新しいSave Scene File if Requiredトグルが追加され、グラフを調理する前のシーンの自動保存を無効にすることができます。

目次へ戻る

14.3 Services

  • PDGコマンドチェーンは、独自の内部サーバーシステムを使用する代わりに、サービスを使用して実行できるようになりました。
  • pdg.ServiceManagerクラスに、特定のサービス・クライアントを再起動または停止するためのメソッドが追加されました。
  • PDGサービス・クライアントは、タスクのクッキングが終了するたびに、サービス・プロセスのメモリ使用量を記録するようになりました。

目次へ戻る

14.4 USD

  • USD Analyze TOPは、LOPノードまたはファイルのメタデータ、依存関係、外部参照を取得します。
  • USD Render Scene TOPは、ディスク上の.usdファイルまたはLOPネットワークをレンダリングします。
  • USD Import TOPは、Evaluate with Work Item Attributesトグルを有効にすることで、ターゲットLOPノードをクックする前にAttribute-Dependent Expressionsを無効にするように設定できるようになりました。
  • USD Render TOPに、出力ファイルパス上の中間ディレクトリの作成を有効にするトグルが追加されました。新しいトグルはデフォルトで有効になっています。

目次へ戻る

14.5 Schedulers

  • クックの完了時または Houdini セッションの終了時に、一時ファイル ディレクトリの自動削除を有効にするオプションをすべてのスケジューラノードに追加しました。
  • Local Scheduler TOP に、タスクプロセスの最大メモリ使用量を制御するためのパラメータを追加しました。
  • ワークアイテムに割り当てられているスケジューラ名に、[@pdg_schedulername]アトリビュートでアクセスできるようになりました。
  • すべてのスケジューラーノードに、Houdini ジョブで実行するカスタム hython 実行可能ファイルを指定できるオプションを追加しました。

目次へ戻る

14.6 Processors

  • OpenImageIO TOPは、OpenImageIOのコマンドラインツールを使って画像を処理するタスクを作成します。
  • Filter by Attribute TOPは、入力されたワークアイテムを、その属性の名前または値に基づいてフィルタリングします。
  • Split by Count TOPは、ワークアイテムのストリームを固定カウントを使って2つのブランチに分割する。
  • ROP OpenGL Render TOPは、OpenGL ROPと、ROPをクックする設定済みのROP Fetch TOPをラップしたアセットです。
  • Attribute from File TOP  は、ファイルから指定されたアトリビュートフォーマットパターンを使用してワークアイテムのアトリビュート値を解析します。
  • ROP Fetch TOPのカスタム出力ファイルタグパラメータは、単一の文字列値ではなく、スペース区切りのファイルタグのリストに設定できるようになりました。
  • Attribute Create TOP に、ワークアイテムの入力ファイルを出力ファイルリストにコピーするかどうかを決定するパラメータが追加されました。
  • HDA Processor TOPのワークアイテムは、TOP内でクック中に、入力される.hdaファイルが変更された場合、キャッシュファイルが無効になるようになりました。
  • HDA Processor TOP からパフォーマンスモニター情報を書き出すサポートを追加しました。

目次へ戻る

14.7 Partitioners

  • すべてのパーティショナーノードにトグルを追加し、パーティショニング ステップ中に失敗した入力ワークアイテムをスキップできるようにしました。
  • Partition by Bounds TOPに、ノードがソースジオメトリをどのように扱うかを制御するオプションを追加しました(ポリゴンや境界領域に変換するか、そのまま使用するかなど)。

目次へ戻る

15. Machine Learning

ML Deformer:
シミュレーションを使えば、リニアブレンドスキニングよりもリアルなデフォーメーションが可能です。しかし、リニアブレンドスキニングの方がはるかに高速です。シミュレーションされたポーズを学習し、リニアブレンドスキニングを改善することはできるのでしょうか?ランダムなポーズから学習することで、リニアブレンドスキニングをどのように改善できるかを示す例として、Content LibraryからML Deformerのサンプルをご確認ください。



上記のデモでは、TOPネットワークを使用して、機械学習のすべての段階(データ生成、前処理、トレーニング)を制御します。新しいONNX SOPPrincipal Component Analysis SOPPython Script TOP の機能強化など、MLをサポートするいくつかのHoudini 20の新機能の使用を示しています。

ML Terrain:
Content LibraryにあるML Terrainの例は、TOPsを使って地形データを生成し、そのデータを使ってMLモデルをトレーニングする方法を示しています。モデルは、学習された地形のスタイルをキャプチャします。例えば、入力地形データが砂漠の砂丘で構成されている場合、モデルはそのスタイルの地形を生成するように学習します。学習されたモデルは、新しいONNX SOPを使用してHoudiniによって評価されます。



上記のデモでは、MLモデルの作成からHoudiniで直接使用するまでの完全なウォークスルーを示しています。独自のTerrain Erosion(地形浸食)HDAをプラグインしたり、を使用したりできます。高解像度または低解像度を使用して結果を比較できます。巨大な地形に対してテストすることも、細かなディテールで作業することもできます。月のクレーターのMLモデルやエイリアンの世界をトレーニングすることもできますし、単に既存の実世界のLiDARデータを使用することもできます。

目次へ戻る

16. Viewport, User Interface, and Scripting

  • hythonとhbatchを含むHoudiniアプリケーションは、[profile-startup]コマンドラインオプションを受け付けるようになりました。このオプションを指定すると、Houdiniは Performance Monitor. で起動時間をプロファイルします。このオプションを使用して、Houdiniの起動シーケンスにおける潜在的なボトルネックを特定します。
  • Performance Monitorは、ノードイベントスクリプトに消費された時間を計測するようになりました。
  • パラメータにファイルパスの補完機能が追加されました。
  • JSONパッケージで定義されたenv varを含む、パラメータ内のenv varが補完されるようになりました。
  • 複数のノードを選択した場合のノードのワイヤーが改善されました。Houdiniは、選択されたすべてのノードの出力を同じ入力に接続しようとすることを避けるようになりました。以前は、Houdiniは選択リストの最初のノードを接続していました(ノードのボックス選択の場合、予測できないことがありました)。
  • RampパラメータのBezierカーブにハンドルが追加されました。
  • Vector形式のパラメーターにカンマ区切りの値を貼り付けた場合でも、機能するようになりました。
  • 3DシーンビューポートはVulkan graphics APIを使用してレンダリングできるようになりましたが、今回のリリースでは試験段階であることにご注意ください。Vulkanへ切り替えるためには、環境変数設定で「HOUDINI_VULKAN_VIEWER」の値を1に設定してください。Vulkanレンダラーはまだ製品版には対応していないため、テスト目的または既存のレンダーフックをVulkanに移植する場合にのみ使用することをお勧めします。

目次へ戻る

17. VEX and OpenCL

17.1 VEX

  • windingnumber」関数は、点の周りのメッシュの巻き数を計算します。
  • windingnumber2d」関数は、XY平面上の曲線の点周りの巻き数を計算します。
  • distance_pointline」関数は、点QとベクトルDに平行にOを通る無限直線との間の最も近い距離を返します。
  • distance_pointsegment」関数は、点Qと点P0とP1を結ぶ有限の線分との間の最も近い距離を返します。
  • diag」関数 は、対角エントリを抽出するか、対角行列を構築します。
  • tr」関数 は,与えられた行列のトレースを返します。
  • sum」関数は、入力として行列または行列の配列をサポートするようになりました。
  • pinvert」関数 は行列の擬似逆行列を計算します。
  • slerpv 」関数は、バイアスに基づく2つのベクトル間の球面ブレンドを計算します。
  • typeid」関数は、 VEX データ型を識別する数値コードを返します。
  • gxnoised」関数は、 simplex noise フィールドとその導関数を評価します。
  • ocio_transformview」関数は、 Open Color IO を使用してビューに色を変換します。
  • volumeindex」関数は、特定のボクセルの値を取得します。
  • volumesample」関数は、ボリュームプリミティブの浮動小数点数値をサンプリングします。
  • volumesamplei」関数は、ボリュームプリミティブの整数値をサンプリングします。
  • volumesamplep」関数は、ボリュームプリミティブのvector4の値をサンプリングします。
  • volumesampleu」関数は、ボリュームプリミティブのvector2の値をサンプリングします。
  • volumesamplev」関数は、ボリュームプリミティブの vector 値(3float)をサンプリングします。
  • norm_1」関数は、行列の 1ノルムを返します。
  • norm_fro」関数は、行列のフロベニウスノルムを返します。
  • norm_inf」関数は、行列の infノルムを返します。
  • norm_max」関数は、行列のmaxノルムを返します。
  • agentaddclip」関数が 非推奨 になりました。エージェント定義の共有データは、HOMまたは Agent Clip SOPによって、より効率的で安全な方法で操作することができます。

目次へ戻る

17.2 OpenCL

  • 新しいwrangleのような@構文を使用することで、ノードの構築が容易になりました。
  • [binding topology]アトリビュートがサポートされました。
  • ReadingとWritingのための[binding group]がサポートされました。
  • OpenCL SOPで複数入力がサポートされました。
  • VDBへのインプレース書き込みがサポートされました。
  • 現在、VFX Platform 2023に準拠するため、gcc 11を実行するLinux用のHoudiniビルドと、古いバージョンのgcc用のビルドが個別に用意されています。Houdiniに同梱されるOpenCL CPUドライバのバージョンは、適切なgccランタイムに合わせて異なります。

目次へ戻る

18. HQueue

18.1 KarmaとUSD統合の改善

  • KarmaとUSDのレンダージョブが進行状況を報告するようになりました。
  • HQueueにファームでのKarmaライセンス使用状況を追跡するための新しいsidefx.license.karmaリソースタイプを追加しました。
  • Karma ROPUSD Render ROPまたはUSD Render ROP LOPから.usdファイルを生成し、生成された.usdファイルからフレームをレンダリングする新しいUSDレンダーワークフローをHQueue Render ROPに追加しました。これにより、HQueueレンダージョブは、レンダリングのためにHoudiniライセンスの代わりにKarmaレンダーライセンスを取得することができます。新しいレンダーワークフローは、USD Output Fileパラメータがデフォルトでチェックされている場合に使用されます。
  • HQueue Render ROP に、事前に生成された .usd ファイルからレンダリングする新しい USD レンダー ワークフローを追加しました。この新しいワークフローは、HQueue Render ROP で Use Existing USDs オプションが選択されている場合に使用されます。

目次へ戻る

18.2 ROPとTOPノード

  • HQueue ROPおよびHQueue Scheduler TOPノードのデフォルトのサーバーおよびHFS設定を制御する新しい「HOUDINI_HQUEUE_*」環境変数を追加しました。HQueue環境変数をご参照ください。
  • HQueue ROPノードがプラットフォーム固有のHFSパスをサポートするようになりました。これは、オペレーティングシステムが混在するマシンで構成されるファームにジョブを送信する場合に役立ちます。
  • HQueue ROPノードのHQueue Server、Directories to Create、HFSパラメータがパラメータエクスプレッションに対応しました。このため、変数をファームで評価し、ローカルで評価しないようにするには、これらのパラメータ値の変数に使用されているドル記号文字をエスケープする必要があります。

    例えば、Target HFSパラメータに“$HQROOT/path/to/hfs”を指定していた場合、“\$HQROOT/path/to/hfs”に変更する必要があります。

Windows:
Windows上のHQueueクライアントで、起動時にネットワークドライブを自動マッピングできるようになりました。HQueue Clientの設定ファイルにオプションの[mapped_network_drives]セクションを追加して、自動マッピングされたネットワークドライブを登録します。詳細は、 Mapped Network Drives を参照してください。

目次へ戻る

19. Licensing

19.1 改善点について

  • Webhooksがサポートされました。
  • スタジオがサードパーティのアプリケーション(例えばShotGrid)をSideFXライセンシングシステムと統合することを可能にするパブリックAPIが導入されました。
  • パーティションシステムを完全にリファクタリングしました。このシステムは完全に動的で古いシステムとは異なり、その場で変更できます。
  • hkey経由でローカルのsesinetdを起動/停止できるようにした。この機能を使うために hkey を管理者として起動する必要がなくなりました。

目次へ戻る

19.2 管理ツール/対応バージョン

概要:
クライアントによっては、特定の最小サーバーバージョンを必要とし、サーバーによっては、特定の最小クライアントバージョンしかサポートしないものもあります。下の表は、どのバージョンのクライアントがどのバージョンのサーバと通信できるかを示しています。HTTP(s)は、H20と今後リリースされるすべてのバージョンで使用される唯一のプロトコルです。レガシープロトコルはクライアントバージョンから完全に削除されましたが、サーバーはまだ古いプロトコルをサポートしています。

ご注意:
hserver と sesinetd の両方を最低バージョン 19.5 にアップグレードすることを強く推奨します。

ProgramMin version
hserver (client)sesinetd 19.0
Houdini sesinetd 19.0/hserver 19.0
Houdini License Administrator (hkey) hserver/sesinetd 19.5
Houdini License Administrator (sesictrl)hserver/sesinetd 19.5

目次へ戻る

20.Houdini Engine, APIs, and Plug-ins

20.1 Unreal plug-in

  • Houdini( Unreal Engine 5.0 )からWorld Partitionのエクスポートがサポートされました。
  • Height field が World Partitioned Landscape に対応しました。
  • World Partition 内の Foliage instancingがサポートされるようになりました。
  • HLODレイヤーの設定をアトリビュートとしてインポートおよびエクスポートできるようになりました。
  • Unrealの1 アクタあたり 1 ファイル (OFPA) 機能をサポートします。
  • HDAのパラメーター、入力、プロパティのプリセットに対応するようになりました。
  • スケルタルメッシュとアニメーションアセットのインポート/エクスポートがサポートされました。
  • Houdini EngineセッションでUnrealのヒエラルキーを再現する新しい参照カウント入力システムが追加されました。このシステムは、データの重複を防ぐため、より高速です。
  • 入力タイプが集約され、UIが再設計されました。
  • Node Sync がすべての入力/出力タイプとオプションを完全にサポートするようになりました。

目次へ戻る

20.2 Unity plug-in

  • 新しい Spline Input Object のサポートを追加しました。これにより、アーティストはUnityのSplinesパッケージ(Unityバージョン2022.1以降でサポート)を使用して、UnityのCurve Editor用のHEと同じようにHDA入力としてエディタ内でスプラインを作成、操作できるようになりました。

20.3 HAPI

  • Tracyをサポートします。
  • 辞書アトリビュートの照会と設定のサポートが追加されました。HAPIの新機能をご参照ください。
  • 最適化:新しいHAPI関数SetAttributeUniqueDataは、複数の属性を単一の一意な値に設定します。
  • 新しいHoudini Engine Sampleアプリケーションは、スタジオが独自のDCCアプリケーションやゲームエンジンのためにHoudini統合を作成する際のリファレンスやインスピレーションのソースを提供します。

20.4 Maya plug-in

  • Maya 2024がサポートしました。

20.5 3Ds Max plug-in

  • 3ds Max 2023 および 2024 をサポートしました。
  • アニメーション付きパックプリミティブのトランスフォームキーフレームのベイクアウトをサポートしました。

20.6 glTF

  • 自動生成MikkTタンジェントと法線のインポートオプションが追加されました。
  • 名前フィールドのエクスポートが改善されました。

目次へ戻る

21. Platforms

21.1 Python

  • 主なHoudiniビルドはPython 3.10に対してビルドされるようになりました。
  • Python 3.9のHoudiniビルドは別途インストーラーをダウンロードする必要があります。
  • Python 3.7のサポートを終了しました。

21.2 macOS

  • macOS arm64ビルドはApple clang 14とmacOS 13 SDKでビルドされるようになりました。

21.3 VFX Reference Platform

  • Houdini 20.0は、VFX Reference PlatformのCY2023仕様に準拠しています。
  • 新しい Linux gcc 11, glibc 2.28 ビルドが追加されました。
  • Python 3.10.10がサポートされました。
  • NumPyが1.23.5にアップグレードされました。
  • OpenColorIO が 2.2.0 にアップグレードされ、OpenColorIO Python バインディングが追加されました。
  • OpenSubdivが3.5.0 にアップグレードされました。
  • OpenVDBが10.0.0 にアップグレードされました。

21.4 MPlay

  • MPlayは、組み込みのFFmpegディストリビューションを通してネイティブにビデオをエクスポートできるようになりました。

21.5 3rd-party Tools and Libraries

Tools and LibrariesVersionStatus
FFmpeg 6.0.0 Added
libvpx 1.13.0 Added
openh264 2.3.1 Added
lame 3.100 Added
dav1d 1.2.1 Added
SVT-AV1 1.5.0 Added
kvazaar 2.2.0 Added
hiredis 1.0.2 Added
openpgl 0.5.0 Added
mbedtls 3.2.1 Added
ONNX Runtime 1.14.1 Added
cssutils 2.3.1 Upgraded
Eigen 3.4.0 Upgraded
Genshi 0.7.7 Upgraded
libarchive 3.6.2 Upgraded
nng 1.5.2 Upgraded
OpenCV 4.7.0 Upgraded
OpenEXR 3.1.6 Upgraded
requests 2.31.0 Upgraded
six 1.16.0 Upgraded
spectra 1.0.1 Upgraded
sse2neon 1.6.0 Upgraded
Swig 4.1.1 Upgraded
Tracy 0.82 Upgraded
USD 23.08 Upgraded

目次へ戻る

Houdini20で新しく追加された機能や改良された機能の紹介は以上です。
Houdini20新機能のより詳しい解説は、以下のホームページをご参照ください。

▼SideFX社ホームページ:Houdini20ドキュメント(英語
https://www.sidefx.com/docs/houdini20.0/