注意事項
原文 https://www.sidefx.com/forum/topic/75127/#post-321421
バージョン 2 は、Houdini Engine for Unreal プラグインのバージョン 1 との下位互換性がないことに注意してください。そのため、バージョン1のアセットを含まないプロジェクトでのみ、プラグインのバージョン2を使用することが重要です。
ただし、プラグインのバージョン1用に作成されたHoudiniデジタルアセット自体(HDAファイル)は、バージョン2と完全に互換性があります。
-現在、V2のAlpha3.1リリースには、UE4.25およびUE4.24用にビルドされたバイナリがあり、Houdini 18.0.532とリンクされています。
プラグインのソースコードは、UE4.25、UE4.24、UE4.23、およびUnreal(4.26)のマスターブランチのリポジトリで入手できます。
-バージョン1とバージョン2を混在させないでください! そうするとよくないことが起こります。
アルファは新しい/クリーンなUE4プロジェクトで使用するものとします。
- このことを念頭に置いて、Houdiniをインストールする際には注意が必要です。現在のインストーラでunrealプラグインを有効にすると、(エンジン内の)unrealにもv1ファイルがコピーされてしまいます。
現在のアルファにはバージョン1のほぼすべての機能があるため、現在のプラグインドキュメントはv2にも適用されます。
バージョン 2 の新機能の詳細はレポの wiki [github.com] にありますが、v2 にはまだドキュメントがありません。
ダウンロード
原文:https://www.sidefx.com/forum/topic/67922/?page=5#post-321417
Houdini Game jamが開催されるため、プラグインのAlphaバージョンが公開されることになりました。
githubリポジトリでアクセスできます:
https://github.com/sideeffects/HoudiniEngineForUnreal-v2
ソースコードは、UE4.23 / 24/25およびアンリアルのマスターブランチ(4.26)で利用できます。
UE4.24および4.25用のビルド済みバイナリは、リリースページからダウンロードできます。
https://github.com/sideeffects/HoudiniEngineForUnreal-v2/releases
現在、Alpha3.1は最新のHoudini 18.0のプロダクションビルドであるH18.0.532にリンクされています。
インストール
- リポジトリの「Releases」セクションでプラグインのビルド済みバイナリをダウンロードします。
- releaseの「HoudiniEngine」フォルダをUnrealの「Plugins / Runtime」フォルダに解凍します。プラグインは、エンジンフォルダー(「Engine / Plugins / Runtime / HoudiniEngine」内)またはプロジェクトフォルダー(「Plugins / Runtime / HoudiniEngine」内)に直接インストールできます。
- Unreal Engineを起動し、プラグインメニューを開き、HoudiniEngine v2プラグインを有効にしてください(Renderingセクションで)。 有効にする必要がある場合は、UE4を再起動します。
- プラグインが正常にインストールされ、有効になったことを確認するには、エディタのメインメニューバーの"Edit "と "Window "の間に新しい "Houdini Engine "メニューが追加されたことを確認することができます。
- これで、Houdini Digital Assets (HDA) .otlまたは.hdaファイルをインポートしたり、コンテンツブラウザにドラッグ&ドロップすることができるようになります。
- コンテンツブラウザでHDAを作成したら、エディタービューポートにドラッグしてください。これにより、新しいHoudini Asset Actorが生成されます。ジオメトリのクッキングは別のスレッドで行われ、クッキングが完了するとジオメトリが表示されます。この時点で、Detailsパネルにアセットのパラメータと入力が表示されます。パラメータを変更すると、アセットが再調理され、ジオメトリが更新される可能性があります。
Houdini Engine for Unreal - Version 2(July 21, 2020 )機能まとめ
原文:https://www.sidefx.com/forum/topic/67922/?page=4#post-318664
SideFXはプラグインに多くのリソースを投入しており、我々は本当に良い進歩を遂げています。
バージョン2は現在プライベートアルファ、具体的にはアルファ3で、8月末にはパブリックベータを開始したいと思っています。
ここでは、現在アルファバージョンにて利用可能な新機能と変更点のいくつかをリストアップしています。
Core:
新しく再設計されたコアアーキテクチャは、よりモジュール化され、軽量化されました。
プラグインは3つのモジュールを使用するようになりました。HoudiniEngine、HoudiniEngineEditor、HoudiniEngineRuntimeの3つのモジュールを使用します。
すべてのHoudini Engine/HAPIロジックはエディタ専用で、"HoudiniEngine "モジュールに含まれています。プラグインで使用されるすべてのカスタムランタイムコンポーネントとアクターは、単にデータホルダーとして動作し、HoudiniEngineモジュールによって処理され、ゲームをパッケージ化する前にHDAを焼く必要がなくなりました。
プラグインはネイティブのUPropertiesベースのシリアライゼーションにのみ依存するようになったため、カットアンドペースト、レベル間の移動、複製などの操作では、バージョン1の操作に伴う問題は発生しません。
Outputs:
- スタティックメッシュの作成時間が最適化され、Mesh Descriptionsを使用するようになりました
-HDAの編集中に、さらに高速な「プロキシメッシュ」生成を使用することもできます。 ProxyMeshesは、タイマーでレベルの保存/再生時に、または手動で、Static Meshュに自動的に調整できます。
- ワールドコンポジションに対応しました。タイル状のハイトフィールドを複数のランドスケープアクター/スティームプロキシにベイクできるようになり、ワールドコンポジションに必要なレベルを作成/更新します。
新しい「unreal_level_path」アトリビュートを使用してレベルのパスを指定できます。これは、メッシュとインスタンサーでも使用され、個別のレベルにベイクアウトすることもできます。
- マテリアルオーバーライドと一般的なupropertyアトリビュートをインスタンサーまたはインスタンスごとに適用できます(メッシュ分割インスタンサーまたはインスタンス化されたアクターを使用する場合)。
- インスタンスのコンポーネントは、インスタンスの数が1を超える場合にのみ作成されます。 インスタンサーにインスタンスが1つしかない場合は、代わりにStaticMeshComponentが作成されます。 これは、パックプリミティブを使用してジオメトリを分割する場合に特に便利です。
- インスタンスオーバーライドのバリエーションごとに位置オフセットを持つことができるようになりました。
- Physical Materialは、"unreal_physical_material "プリミティブアトリビュートを使用している場合、ランドスケープ/ランドスケープごとのレイヤーに設定することができます。
- コンテンツブラウザでアセットへの参照を割り当ててメッシュソケットを出力する機能を追加しました。参照されたアセットはインスタンス化され、ソケットに割り当てられます。
- アトリビュートインスタンサー("unreal_instance")やソケットアサインメントで参照しているアセットが見つからなかった場合、プラグインは、デフォルトで "asset not found "ボックスメッシュを作成するようになりました(デフォルトではゲーム内で非表示になっています)。
これはプロジェクト設定でデフォルトでの有効/無効を設定することができます。
- “unreal_foliage” アトリビュートをインスタンサーに使用すると、ベイクせずに直接foliageインスタンスを作成することができます。
- テンプレート化されたジオメトリの出力のサポートを追加しました。“output templated geo” アセットオプションを有効にすると、HDA内のテンプレート化されたジオメトリは、特定のワイヤーフレーム、デフォルトのマテリアルを使用してプラグインによって出力されます。デフォルトではゲーム内に非表示になります。
- “unreal_instance”アトリビュートを使用している場合、クラス("PointLight"、"AudioVolume "など)を直接インスタンス化する機能が追加されました。
これは、コンテンツブラウザにアセットとして保存できないクラスをインスタンス化したい場合に特に便利で、そのためのBPを作成する必要がなくなります。
Inputs:
- “Export colliders”を有効にすると、スタティックメッシュ上のコライダーをグループジオメトリとしてインポートすることができます。
- World inputでは、BSPブラシからデータを読み込めるようになりました。
- インスタンサーとFoliageアクターは、v1のように個別のメッシュをマージするのではなく、パックプリミティブとしてインポートされます。
- World inputでは、選択されたオブジェクトの境界に含まれるすべてのアクターとオブジェクトを送信できるように、境界選択モードが改良されました。
- World inputは、サポートされているすべてのインプットオブジェクト(ランドスケープ、houdiniアセットアクター...)からデータをインポートできるようになりました。
- World inputでは、Houdini Asset Actor'sとは異なるレベルに配置されたアクターからデータをインポートできるようになりました。
- World inputでは、変更されたアクターのみが更新されるようになりました(v1では選択範囲がすべて更新されました)。
- World inputに select all / clear the current selectionボタンを追加しました。
- 単一のcurve inputで、任意の数のカーブを作成してインポートできるようになりました。
- curve inputまたはeditable curveをAltクリックするだけで、新しい点を挿入できるようになりました。
- geometry、asset、world inputに「import as reference」が追加されました。
これにより、ジオメトリ全体を送信するのではなく、選択したアセット/アクターを「unreal_instance」リファレンスとしてインポートできるようになりました。
-メッシュのインポート時にマテリアルパラメータアトリビュートがインポートされるようになりました。
Parameters:
- HDAパラメーターと入力の編集で、複数選択がサポートされるようになりました。
- パラメータUIが改善されました:
- フォルダUI(タブ、ラジオ、折りたたみ可能)。
- Ramp UIが改善され、編集中にランプの自動更新を簡単にオフにできるようになりました。
- String パラメータがドラッグ&ドロップをサポートするようになりました。
アセットがstring パラメータにドロップされると、その値は自動的にそのアセットの参照に設定されます。これは、特に unreal_instance / unreal_material アトリビュートを使用してインポートする場合に便利です。
- Stringパラメータがアセットピッカーになり、"unreal_ref "タグが付いている場合に、 Stringの値をアセットの参照に設定することができるようになりました。
アセットピッカーでアセットのフィルタリングに使用するクラスは、"unreal_ref_class "タグで指定することができます。
- Fileパラメータのサポートが改善されました (カスタム拡張子、ディレクトリ、新規ファイル...)
-Multi-line string、Column Label、Button Strip,、Log Int 、Floatがサポートされました。
General:
- プラグインのUIが完全に刷新され、新しいHoudini Engineメニューがエディターに追加されました。
- bgeo/bgeo.scファイルは、コンテンツブラウザ(メッシュとインスタンサー)にネイティブにインポートすることができます。
- PDG Asset Linkが追加され、HDAに入れ子になったTOPネットワークを制御できるようになり、Unityプラグインのものと同様に動作します。
- Session Syncに対応しており、Houdini内部で動作するHoudini EngineのセッションをSession Syncに接続することができます。
Houdini Engineの状態は、Unrealでプラグインを操作しているときにHoudiniで表示できます。プラグイン経由のUnrealでも、さまざまなインターフェイス経由のHoudiniでも、どちらか一方の端で変更が行われると、両方のアプリケーションで変更を加えて同じ結果を見ることができ、全体的に同期されます。
アップデート-修正プログラム
Alpha 3.2
プラグインはHoudini 18.0.532 / HAPI3.3.11と連携しています。
新機能:
- インスタンスを複数のコンポーネントに分割する際に使用される("unreal_split_attr "アトリビュートを介して)アトリビュートの値は、intではなく文字列として読み込まれるようになりました。これにより、intアトリビュートだけでなく、int、float、stringのいずれかのアトリビュートを使用して、インスタンサーを分割することができます。
- インスタンス化する際に、階層的なインスタンス化されたスタティックメッシュコンポーネントを強制的に作成するサポートを追加しました。これを行うには、インスタンサーに「unreal_hierarchical_instancer」(value 1)を追加するだけです。
- Session Sync:ビューポート同期を追加する際の最初のパスです(まだ作業中です)。 これにより、Session Syncの使用時にUnrealビューポートとHoudiniビューポートを同期させることができます。
バグの修正:
-マルチ/バージョン対応HDAをインスタンス化するときに欠落していたサブアセット選択ダイアログを戻しました。
- ワールド入力を更新すると Houdini/HARS がクラッシュする原因となっていたリグレッションを修正。
- ワールド入力でBrushes を使用するとクラッシュする原因となっていたリグレッションを修正しました。(潜在的には、ワールド入力でデフォルトのマテリアルを使用している場合)
- logging/stringの処理が不適切なためにアトリビュート値を変換する際のクラッシュが修正されました。
-ランドスケープレイヤーをHoudiniにインポートするとき、それらの値は正規化された[min max](uint8)から[0 1](floats)ではなく、[0 255](uint8)から[0 1](floats)に変換されるようになりました。 これにより、フラットレイヤーをインポートする際のNanも修正されました。
-ネストされたHDAを含む、すべてのネストされたテンプレート化されたgeoを表示する"output templated geos" が修正されました。これで、メインHDAノード、出力OBJノード、または出力表示SOPの子であるテンプレート化されたgeoのみが表示されます。
-Curve Input: :Addボタンをスパムするときに表示される「Ghost/Broken"」カーブコンポーネントを修正しました。
AddボタンをクリックしたときにHDAがクックされているかどうかを確認します。
-ゲーム構築時の初期化警告(CachedSurfaceHash)が修正されました