よく訊かれる、Houdini Core と Houdini FX の併用、Houdini Engine のライセンス周りについて説明する。
1. Houdini Core|FX 製品比較
それぞれの製品概要はこちらにあり。
簡単に言ってしまえば、Houdini Core は、高価な Houdini FX からシミュレーション機能を取り去ったもので、それだけ安価になっている。両方を併用する上で知っておくと良いのは以下の通り。- Houdini Core でも Houdini FX が扱えるすべてのジオメトリ形式 (ポリゴン、NURBS、Sub-D、ボリューム、OpenVDB など) が扱え、また、Houdini Core は Houdini FX が読むことが出来るファイルフォーマットすべてに対応している。
- Houdini Core は、Houdini FX で作成したシーンファイル (.hip) をエラーを出さずに開くことが出来る。
- シーンファイルにシミュレーションノードがある場合、それらのノードは、Read-only となる。
- Read-only となったノードは、編集は不可能だが、再生とレンダリングは Houdini Core からでも可能。
- つまり、Houdini Core は、Houdini FX のライティングツールとなり得る。
- FX 内のシミュレーションを HDA (Houdini Digital Asset) にまとめれば、Houdini Core の中で、HDA のパラメータを元に編集可能。つまり、複雑なシミュレーションはともかく、簡単にまとめられたシミュレーションは、Houdini Core でも使うことが出来る。
- この流れは H17 で加速され、新機能 Vellum の Simple Cloth は Houdini Core で使える (Rigging シェルフにあり)。
- Houdini Core は、Houdini FX のライセンスを消費しない。よって、Houdini Core を起動することで、より高価な Houdini FX のライセンスが消費されることは、基本的にはない。
- Houdini FX ライセンスによる Houdini Core の強制起動方法はこちら。
2. Houdini Core から Houdini FX へのアップグレード
アップグレードは以下の通りに可能。
下から右へ | Core WS | Core LAL | FX WS | FX LAL |
Core WS | -- | ○ | ○ | ○ |
Core LAL | -- | -- | -- | ○ |
FX WS | -- | -- | -- | ○ |
- LAL から WS に(ダウングレード)は出来ない。
製品タイプアップグレード (Core->FX) の場合、使用しているライセンスの返却が必要(2020年1月以降不要)。- ライセンスタイプアップグレード (WS->LAL) に対しては、新しいサブネットマスクが発行される。既存ライセンスの返却は (2017年以降) 不要。
- 価格は代理店に問い合わせ。
3. Houdini Engine 概要
Houdini Engine は大きく分けて二つの 2つの機能を提供する。
- GUI 無し Houdini としてのバッチ処理。主にシミュレーションやファイル出力など。
- 別ホストアプリケーションで、Houdini Engine プラグインを介した HDA の利用。これにより Houdini のプロシージャル機能を他のアプリケーションで利用できる。
Houdini Engine インストールに関して
- Houdini (本体) と Houdini Engine のインストーラは同一。同じコンピュータで使う場合には二度のインストールは不要。
- しかし Houdini Engine プラグインだけを使う場合でも Houdini のフルインストールが必須。
- Houdini Engine for [Maya|Unity|Unreal|3DS Max] のプラグインを使いたい場合には、インストーラでそれぞれのコンポーネントをオンにする。
- Engine プラグインを使うにはライセンスが必要。
- 商用版の場合、有償の Houdini Engine ライセンス、または Unity および Unreal プラグインに対してのみ、無償の Houdini Engine for Unity/Unreal のライセンスが使える。無償ライセンスはここから入手可能。
- Indie 版の場合、無償の Houdini Engine for Indie ライセンスが必要。ここから入手。Houdini Engine for Unity/Unreal は互換性がないが、Houdini Engine for Indie ライセンスで同じことができる。
- Education (学生版含む) の場合、Houdini Engine Education ライセンスが購入時に同時に発行されている。なお、 Houdini Engine for Unity/Unreal または Indie 版の Houdini Engine ライセンスは扱うファイルフォーマットが異なるために使えないが、同梱の Houdini Engine Education で同じことができる。
- Houdini Apprentice の場合、Houdini Engine は一切使えない。
- 各製品へのライセンス文字列のまとめはこちら。
4. Houdini Engine ライセンスの挙動
- Houdini Engine のプラグインは、HDA をロードし、最初にクックした時にライセンスをチェックアウトしに行く。プラグインがホストアプリケーションにロードされた時ではない。
- Houdini Engine のプラグインは、ネットワークライセンスの場合、まず Houdini Engine ライセンスを見に行く。無ければ次に Houdini Core のライセンスを見に行き、あれば Core ライセンスを消費して Houdini Engine を実行する。Core も無ければ Houdini FX のライセンスを見に行き、あればそれを使う。それも無ければ起動できない。
- よって、Houdini Core|FX のライセンスで Houdini Engine を起動することも可能だが、非常に高くつくことになる。この挙動を制限するために HAPI_LICENSE_MODE という環境変数が使用可能。以下のように設定することで、チェックアウトするライセンスを制限できる。
HAPI_LICENSE_MODE Engine Core FX default または未定義 1 2 3 engine_only 1 0 0 houdini_escape_only 0 1 0 houdini_fx_only 0 0 1 - ワークステーションライセンスの場合、Houdini Core または FX のライセンスだけで Houdini Engine の機能を同一PC 上で実行可能。よって、Houdini Core または FX のライセンスがあれば、Maya 等のプラグインも同時に実行可能。
- よって、Houdini Core|FX のライセンスで Houdini Engine を起動することも可能だが、非常に高くつくことになる。この挙動を制限するために HAPI_LICENSE_MODE という環境変数が使用可能。以下のように設定することで、チェックアウトするライセンスを制限できる。
- ライセンスがチェックアウトされた後は、(In Process の場合)、ホストアプリケーションを終了するまでライセンスが保持される。
- また、H19 のライセンスシステムでは、さらに便利な追加機能が増えた。
5. Houdini Engine セッションに関して
ホストアプリケーションで Houdini Engine を実行することをセッションと呼ぶ。セッションには、ホストアプリケーションのプロセスで実行する In Process という方法と、ホストアプリケーションと Houdini Engine をそれぞれ独立したプロセスで実行する方法の二つが考えられ、後者の方法を Thin Client (シンクライアント)と呼んでいる。Thin Client には、ソケットを使う方法と パイプを使う方法の2通りがあり、実際に Maya プラグインの Preferences にはこの3つの選択肢が存在する。
- In Process: ホストアプリケーションのプロセスを親プロセスとし、その子プロセスとして Houdini Engine が実行されるもっとも初期の Houdini Engine の実装方法。ライブラリの衝突などの問題が潜在し、Houdini 17以降ではサポートしていない。H17 のMaya プラグインで設定が In Process となっている場合 Named Pipe が使われる。
- ソケット: ホストアプリケーションと Engine のプロセスを TCP 経由で接続する。Engine のプロセスととホストアプリケーションを別のコンピュータ上でも実行可能で、またライブラリの衝突などの問題から回避できる。
- パイプ (Named Pipe): 同一ホスト上で ホストアプリケーションと Houdini Engine を別プロセスで実行する、H17 からのデフォルト設定。
5. Houdini Engine の自社製エンジンへの組み込み
ゲーム開発において Houdini Engine を導入する上で、前提として:
- 自社製ゲームエディタなど自社製ツールに Houdini Engine を統合するには、Houdini Engine の API (HAPI) を使って自社製ツール向けにプラグインを書くことになる。
- Houdini Engine の実行には Houdini のフルインストールが必須。プラグインだけあれば、ということではない。
- Houdini Engine は、ランタイムソリューションではないので、自社製エディタに組み込むことはできるが、出荷ゲームに組み込むことはできない。
- プラグインを書く上で、参考になるものとして以下のものがある:
- CAPCOMオープンカンファレンスRE:2019
- Houdini Engine ドキュメント (英語のみ)
- Houdini Engine プラグインソースコード
- $HFS/toolkit/include/HAPI/HAI_API.h
- Houdini インストールディレクトリ以下にある HAPI のヘッダファイル
- Houdini Engine 2 Master Class チュートリアル (2016年、日英字幕つき)
- Houdini Engine API 入門 (@jyouryuusui)
リンク
- H19 のライセンスシステム変更点
- H17 での Houdini Engine の変更点
- Houdini Engine用環境変数 (インディゾーンHoudini情報日本語ブログ)
- Unity/UE4 での Houdini Engine ライセンス処理 (Born Digital サポート)
最終更新: 2024-02-19
0 件のコメント:
コメントを投稿