On this page

カーブは、Unreal Engineビューポートで表示および操作できるため、Houdiniでアセットの挙動を制御するのに便利です。

Houdini Engine for Unrealでは、HoudiniカーブまたはUnreal Splineコンポーネントのいずれかを使用して、Houdiniアセットの Curve SOP を制御することができます。 Houdiniカーブは、カーブ入力または編集可能なカーブノードを使用して作成できます。 Unreal Splineコンポーネントは、World Outliner Inputで使用することができます。

また、unreal_output_curveアトリビュートの使用時は、カーブをUnreal Splineコンポーネントとして出力できます。

Houdiniカーブ

入力カーブ

Houdiniカーブは、Curve Inputを使用してアセットを制御します。 これは、ノード入力またはオブジェクトパス入力を作成して、タイプを Curve に変更することで実行できます。

その後、カーブはエディタのビューポートに表示され、そこで直接編集することができます。 タイプやメソッドなどのカーブパラメータは、Detailsパネルで変更できます。

詳細は、カーブ入力を参照してください。

編集可能なカーブノード

Curve SOPを編集可能にして、Unrealで編集可能なHoudiniカーブを作成することもできます。

編集可能なカーブノードを作成するには:

  1. Houdiniの Type Properties ダイアログで、 Node タブを見つけます。

  2. Curve SOPをアセットの Editable Nodes リストに追加します。

複数のカーブノードを編集可能にすることができます。

Unrealでは、エディタのビューポートで直接編集することができます。

Note

このワークフローは現在廃止されており、Houdini 19.0で導入された新しいCurve SOPとは互換性がありません。 Houdini 19.0で編集可能なカーブを使用したい場合は、Curve1.0 SOPを使用するようにしてください。

2通りの方法でこれを行なうことができます:

  • ネットワークエディタでCurve SOPを右クリックし、 Actions ▸ Change Type を使用して、次にNode Typeを curve::2.0 ではなく curve にします。

  • Asset Definition Toolbarを Assetsメニュー で有効にしてから、 Asset Definition Toolbar ▸ Show Always と移動し、Curve SOPのパラメータの上に表示されるドロップダウンで curve::2.0 でなく curve を選択します。

Houdiniカーブを編集する

表示されたカーブを含むHoudiniアセットを選択すると、エディタのビューポートにカーブとコントロールポイントが表示されます。 アセット全体を選択すると、ポイントがグレーアウトされます。

カーブのポイントをクリックして、カーブを編集します。ポイントのスケール、回転、移動にはトランスフォームギズモを使用できます。

現在の選択の後に新しいポイントを作成するには、Altをクリックしながらコントロールポイントを移動します。 または、カーブ上でAlt)を押すと、新しいコントロールポイントが自動的に挿入されます。

カーブから現在選択されているポイントを削除するには、⌦ Delを押します。 または、カーブポイントで右クリックし、コンテキストメニューを使用することもできます。

カーブの最初の2つのポイントは緑色とオレンジ色になっており、それでカーブの方向が分かります。これは、閉じたカーブを使用するときに便利です。

カーブの各コントロールポイントの回転およびスケールは、Unrealでスケールおよび回転ギズモを使用することで変更できます。

回転値およびスケール値は、Houdiniで標準のrotおよびscale Pointアトリビュートとして表示されます。

Unreal Splineコンポーネント

Unreal Splineコンポーネントを使用して、Houdiniの Curve SOP を制御することもできます。

World Inliner Inputを使用して、Splineコンポーネントがアタッチされたアクターを選択します。

Unreal Splineコンポーネントは、既存のスプラインをHoudiniアセットで直接再利用したり、複数のアセット間でカーブを共有するのに大変便利です。

Unrealのスプライン補間は、Houdiniで完全には再現できないため、Houdiniにマーシャリングして線形 Curve SOP に変換するとき、スプラインは微調整された位置に再サンプルされます。 World Outliner InputでUnreal Spline Resolutionパラメータを使用すると、再サンプルに使用されるサンプルの長さを選択して、微調整された位置をHoudiniに送ることができます。

デフォルト値は50で、Unrealで50cm毎にスプラインポイントを抽出し、Houdiniにマーシャリングします。スプライン解像度を0に設定すると、スプラインのコントロールポイントのみがマーシャリングされます。スプラインの最初と最後のポイントは、必ずHoudiniにマーシャリングされます。

各スプラインポイントの回転およびスケールは、標準のrotおよびscale PointアトリビュートとしてHoudiniで使用できるようになります。

Note

Houdiniカーブとは異なり、閉じたUnrealスプラインは閉じたカーブとして作成されず、同じ開始点と終点を持つ開いたカーブとして作成されます。 HDAが通常閉じたカーブ(つまりポリゴンを定義する)を想定している場合は、EndsノードでClose UパラメータをClose Straightに設定することで、確実にカーブ入力を閉じることができます。

rotおよびscaleアトリビュート

Houdini Engine for Unrealでは、HoudiniカーブおよびUnrealスプラインの両方がCurve SOPを生成し、そのポイントには追加のrotおよびscale Pointアトリビュートが含まれています。

これらのアトリビュートにより、Unrealの標準ギズモを用いてアセットを操作できるため、アセットをより詳細に制御できます。

しかし、Curve SOPはもともとこれらのアトリビュートを持たないため、カーブノードがそれらを使用するノードによって処理されると、そのアトリビュートの存在が副作用を引き起こす可能性があります。

例えば、カーブを背骨として使用するSweepノードです。Unrealでカーブのポイントの回転を変更しない場合でも、追加されたrotアトリビュートによって、カーブでスイープされるジオメトリの向きが変わることがあります。

これを解決するには、追加したrotパラメータを考慮して入力ジオメトリを回転するか、Attribute Deleteノードを使用してカーブからそのパラメータを削除する必要があります (Sweepノードの場合は、Transform using attributesパラメータでもこの問題を解決できます)。

カーブ出力

HDAから、カーブをUnreal Splineコンポーネントとして出力することができます。カーブにunreal_output_curve intアトリビュートを追加し、値を1に設定する必要があります。

出力Splineコンポーネントが線形または閉じている場合は、それぞれunreal_output_curve_linearまたはunreal_output_curve_closed intアトリビュートの値を1または0に設定することで、制御できます。

Note

出力カーブは単なる出力オブジェクトであり、メインアセットの再クック時に再生成されます。 UnrealでSplineコンポーネントを変更しても、それに呼応するHoudiniカーブは更新されません。

Unreal

はじめよう

基本

Houdini Engineを使用する

リファレンス

Houdini Engine for Unreal Engineは、HoudiniのテクノロジーをUnrealに統合できるプラグインです。 Session SyncとNode Syncは、Houdiniのライブセッションと相互作用するためのHoudini Engineプラグインの2つの機能です。

このプラグインを使用すると、Houdiniの強力かつ柔軟なプロシージャルワークフローを、Houdiniデジタルアセットを通してUnreal Engineで実現できます。 アーティストはエディタ内でアセットパラメータをインタラクティブに調整して、Unrealアセットを入力として使用することができます。 その後、Houdiniのプロシージャルエンジンがアセットを“クック”し、その結果をエディタで使用できるようになります。ベイクする必要はありません。

一般情報:

互換性:

現在のところ、プラグインにはUE5.3、5.2、5.1、5.0、UE4.27、UE4.26向けにビルドされたバイナリがあり、Houdiniの最新のプロダクションビルドにリンクされています。

プラグインのソースコードは、UE5.3、5.2、5.1、5.0、UE4.27、UE4.26のこのリポジトリで利用可能です。

Note

UE5.1およびUE5.0は、同じソースファイル/ブランチを使用し、5.0ソースは5.1でも使用できるようになっています。

サポートおよびバグのレポート:

便利なリンク:

SessionSync

Houdini Engine SessionSync機能を使用すると、GUIを使ってHoudini内で実行されているHoudini Engineのセッションに接続することができます。 通常のHoudini Engineワークフローのすべての機能と、Session Sync固有の追加機能をサポートしています。

Houdini Engineは非UIバージョンのHoudiniを使用しますが、Session SyncではHoudiniのユーザインターフェースを通してHoudiniセッションを確認したり、操作することができます。 また、UnrealやHoudiniで加えた変更は同期されるため、どちらのプログラムでも変更を加えても、同じ結果が得られます。

NodeSync

NodeSyncは、UnrealとHoudini Session Sync間のアセット共有を可能にする、Houdini Engine for Unrealプラグインの機能です。スケルタルメッシュとスタティックメッシュで機能します。

専用のHDAを使用することなく、Unrealにデータを送信したり、Unrealからデータを受信することができます。アクターに加えて、スタティックメッシュやスケルタルメッシュでも機能します。

Houdini Niagara

Houdini-Niagaraプラグインを使用すると、HoudiniNiagara Data Interfaceを使用して、HoudiniとUnrealのNiagaraシステム間でポイントクラウドデータを交換することができます。 Houdiniのアトリビュートデータを、HoudiniPointCacheアセットとしてエクスポートできます。 これらをUnrealにインポートし、Niagaraシステムとエミッターを使用して、複雑なエフェクトやパーティクルシステムを作成できます。