Houdini Engine のよくある質問と答え(FAQ)

Houdini Engine と、そのAutodesk Maya 及び Unity 向けのプラグインを最初に発表して以来、この新しいテクノロジに関してコミュニティ から多くの質問をいただきました。 ライセンス問題からEngineがどのように動作するかという質問まで、このFAQにまとめて記載しました。

皆様の熱意に感謝し、またプラグインが出来るだけ早くお手元に届くことを心待ちにしております。

テスト及びライセンス

Q. 誰がHoudini Engine を使用できますか?

A. Houdini Engine API は大規模パイプラインへの組み込み用にデザインされています。初めのうちは、深いレベルでの統合に興味のある大手映画やゲーム制作会社向けへの提供を予定しています。その後、Houdini Engineを利用した適切な業務計画を持つ小規模スタジオや独立系ソフトウェアメーカーに対しても、Houdini Engine API へのアクセスを拡大していく予定です。

Autodesk Maya と Unity を使用しているアーティストは、今年の後半にテスト用プラグインが入手可能になり次第、 Houdini Engine を利用できるようになります。

Q. 私はHoudini Engine API を手に入れることができますか?

A. 制作スタジオは営業担当者を通して Houdini Engine API へのアクセスが可能です。詳細は、houdini_engine@sidefx.com (英語、日本語の場合info-jp@sidefx.com)までお問い合わせください。

Q. どのように Houdini Engine API を テスト/評価 できますか?

A.Houdini Engine API の評価は営業担当者経由で手配できます。 また、Maya 及び Unity プラグインに関しては、labs.sidefx.com にご登録いただきます。

Q. Houdini Engine API はどのようにライセンスされますか?

A. Houdini Engine を既存のパイプラインへの組み込みを手助けするために、Houdini Engine Starter Kit を提供中です。 Starter Kit には、 Houdini Engine ライセンスが4つ、文書資料、サンプルコード、そして技術サポートが含まれます。Houdini Engineライセンスはフローティング ライセンスで、マシン単位でのライセンスになる予定です。

Q. Houdini Engine の価格は?

A. Houdini Engine Starter Kit の価格に関するご相談は営業担当者までお問い合わせください。 Houdini Engine プラグインの価格はまだ決定していません。実験的試験の実施後に発表を予定しています。

Q. サードパーティ デベロッパ は開発ライセンスの取得が必要ですか?

A. デベロッパは初めにHoudini Engine Starter kit が必要です。手配について営業担当者と相談してください。Side Effects に連絡する際には基本的な事業計画のご用意をお願いします。

Q. このAPIを使用したコンテンツに対する特定の配布ライセンスはありますか?

A. サードパーティの会社が Houdini Engine を組み入れた製品を販売したい場合は、houdini_engine@sidefx.com (日本語info-jp@sidefx.com)までお問い合わせください。ライセンスについては個々の事例に応じての話し合いになります。

Q. Houdini Engine V1 は何に対応していますか?

A. 機能的には、最初のバージョンのHoudini Engineでは、ジオメトリ生成、ジオメトリ処理、インスタンスに焦点を合わせています。

Houdiniの全てのノードをアセットと共に利用できますが、ホストとHoudini Engine間で受け渡せるデータタイプはジオメトリに限られ、初歩的なテクスチャサポートをファイルシステム経由で行っているということです。

Q. Houdini Engine API またはプラグインは、無償版のHoudini Apprentice版を使用しているユーザでも利用できますか?

A. Side Effects は、Apprentice版とHoudini Engine をどのように動作させるかまだ決定していません。実験的プラグインが試験用に利用できるようになった際には、Apprenticeアセットと共にそれらを利用できるようにするのが最終目的です。実験的試験が終了した後に、Apprenticeアセットがプラグインと共にどのように動作するかの詳細が発表されます。

Q. Orboltアセットにはどのようなエンドユーザ使用許諾契約 (EULA) になっていますか?ゲームデベロッパはロイヤリティを支払わずにOrboltアセットを自分たちの(商用の)ムービーまたはゲームに利用できますか?

A. アセット自体は使用者(あなた)にライセンスされ、アセットによって生成されたコンテンツは追加料金無しでムービーやゲームに利用できます。アセットの所有権はアセットの作者にあり、アセットによって生成されたコンテンツの所有権は使用者にあります。

Houdini Engine プラグイン

Q. Maya/Unity プラグインはいつから利用できますか?

A. Houdini 13出荷約1ヶ月後に、SideFX Labs から試験利用が可能になります。プラグインを販売するかどうか、またいつからかに関しては未定です。

Q. 独立系ゲームデベロッパがUnityの無料版と利用できるように、Unity プラグインの非商用版を開発してもらえませんか?

A. これは実験的試験が実施されてから決定されます。試験期間中、UnityプラグインはHoudini Apprenticeで作成されたアセットと共に動作し、無料で使用できる予定です。SideFXは、独立系デベロッパがUnityコミュニティで担う役割について理解しており、製品が正式に出荷される時には彼らにとって最適なソリューションを提供する予定です。

Q. Side Effects は Houdini Engineプラグインを 「私の好きなソフト」 向けに開発する予定はありますか?

A. 現状、既に発表済みの2つのプラグイン - Autodesk Maya 及び Unity - に集中し、他のプラグインについては要望や需要をみて開発の判断をしていきます。この過程でわかった事は他のプラグインの開発に活かされます。

Q. 商用で利用している「私の好きなソフト」向け内製プラグインの作成にHoudini Engine API を使用したいと思っています。このプラグインの供給者として、より広範なコミュニティ向けにプラグインを提供する事は出来ますか?

A. まず最初に、あなたが制作したどのようなプラグインもあなたのスタジオ内でのみ使用だけが認められます。もしプラグインをより広範な相手に提供したい場合は、営業担当者経由で弊社プラグインチームを紹介してもらい、パートナーシップについて話し合ってください。

Houdini Engineに関する技術的な質問

Q. Houdini Engine とは実際には何ですか?

A. Houdini Engine API は、Houdini デジタル アセットをホスト アプリケーションにおいて直接利用できるようにすることで、Houdini の技術をどのようなアプリケーションにも組み込み可能にします。Houdini Engine API は、アーティストが最も快適に作業できる環境下でHoudiniの能力を直接活用することを可能にします。

技術的に言うと、Houdini Engine はコンパイラやバージョンが異なっていてもホスト アプリケーションに組み込む事ができるようにバイナリ互換としてデザインされています。弊社では、マネージド環境(例えば.Net)でもネイティブC++アプリケーションでも統合のテストを行っています。

最後に、Houdini Engine API は、関数の数が100以下の軽量なAPIで、簡単に習得できます。本質的に、Houdini Engine API はC言語関数のセットで、3Dプログラミングの予備知識があれば誰でも簡単に使えます。

Q. 全体的なアーキテクチャはどのように動作しますか?

A. 前の回答に記したように、 Houdini Engine API はC言語関数のセットです。このインタフェースはバイナリ互換性を念頭に置いて選ばれました。これは、アセット及びオブジェクトにマップした整数のID ハンドルに基いて操作をします。

Engineがホスト アプリケーション内にインスタンス生成された時、ホスト アプリケーションの中で直接的にHoudiniの完全なセッションを生成し、シーン及びノードネットワークを揃えます。一般に、アーティストからはアセットUIだけが見えます。

Houdini Engine 内の基本アブストラクションは、Houdini デジタルアセットを中心にしています。アセットはインスタンスすることができ、インタフェースは入力、出力そしてパラメータとして露出されます。現状、入出力はトランスフォームとジオメトリだけですが、アセット内部では、ジオメトリだけではなく、あらゆる種類のノードが使用可能です。

ジオメトリ自身だけではなく、ジオメトリ上の全てのHoudiniアトリビュートが抽出可能だということは重要な点です。今後、Houdini Engineは、画像やボリュームデータなど、他の形態の入出力もサポートする予定です。

アセットがインスタンスされると、パラメータと入力アトリビュートはAPIによって操作でき、結果は出力アトリビュートを通して抽出されます。アセットは互いに接続する事も可能で、強力な手続き型ネットワークをホストアプリケーションの中で形成できます。

Q. デベロッパがEngineを組み込む為の基本的なタスクは何ですか?

A. プログラマがHoudini Engineをホスト アプリケーションに組み込む為の作業は下記です。

  • Houdini Engineの初期化
  • アセットインスタンス化、そのプロセスでアセットIDを抽出
  • アセットIDを基にアセットのパラメータをクエリし表示
  • アセットの入力をクエリし、もしある場合、他のアセットが接続できるようにUIに表示
  • パラメータと入力の変更を戻し、Engineが処理できるようにする
  • 必要に応じて出力ジオメトリとアトリビュートを更新する
  • 不要になったら、アセットまたはHoudini Engineをクリーンアップする

Q. Engineを使用するためにHoudiniのセッションが動作している必要がありますか?

A. いいえ。Houdini Engineはホスト アプリケーション内で動作するHoudini Engine独自のライセンスを持ち、Houdiniのセッションを必要としません。

Q. Houdini Engineはランタイムで動きますか?

A. ほとんどの部分で出来ませんが、Unityエディターのプレイモードでは現在アセットをランタイムに”クック”できます。近い将来、ランタイム アプリケーション対応について検討していく予定です。

Q. Maya内でHoudini EngineアセットはMayaのジオメトリと共に動作できますか?

A. はい。Maya内で作成されたデータはHoudini Engineアセットの入力として使用できます。プラグインが実装しているデータタイプだけに制限にされますが。

Q. Orbolt Storeで購入したアセットはHoudini Engineで動作しますか?

A. どの場合も問題ありませんが、各プラグインの実装とアセットの種類に拠ります。インタフェース機能とデジタルアセットの出力データによっては、同等のタイプがホスト アプリケーションに無いかもしれません。例えば、Houdini のPyro volcano (火山)アセットは、Houdini Engineが現時点ではジオメトリしか出力しないので、Adobe Photoshopのようなアプリケーションとはうまく機能しないでしょう。しかし今後、画像などを出力できるようになれば動作が可能になります。

Q. あるバージョンのHoudini Engineは新しい (または古い) バージョンのHoudiniと使用できますか?例えば5年前のバージョンで作成したデータをHoudini またはHoudini Engineで開くことができますか?

A. 基本的には、以前のバージョンのHoudiniで作成したデータも問題なくHoudini Engineで開くことができます。アセット内のノードが何か変更されている場合は、現在のバージョンのHoudiniでアセットの再作業が必要な場合があります。

Q. アトリビュートはMaya内でどのように解析されますか?現状、MayaとHoudiniで文字列アトリビュートをやりとりするのは難しいですが。

A. 現在、検証中です。

Q. ホストアプリのあるマシンの代わりにネットワーク越しでの”クック”はできますか?

A. いいえ。Houdini Engineはローカルマシンでのみ”クック”できます。

Q. Engineは組み込みのNetwork/VEX エディタにも対応しますか?

A. Houdini Engineはホスト アプリケーション内のUI要素を利用するようにデザインされています。ホスト上でアセットを編集するUIは用意しません、これはHoudini自体の仕事です、ホスト内でアセット同士を効果的に接続する為の、例えば"グラフ"のようなUIは用意します。

Q. APIを通してMantraでレンダリングすることは可能ですか?

A. 理論上は可能です。しかし現実的かどうかホストアプリで検証していません。

Q. 自分のアプリケーションへ組み込むシンプルなサンプルコードはありますか?

A. ドキュメントと共ににサンプル コードも提供されます。

Q. デベロッパは皆lib依存の苦痛を知っていて、ホストアプリとHoudiniとの同期は大抵簡単にはいきません。boost、gcc、tbbなどの必要要件は何ですか?

A. Houdini Engineはバイナリ互換としてデザインされています。より具体的な情報はデベロッパがEngineで作業を開始時に提供されます。

Q. 動作速度を比較すると、アセットの”クック” はHoudiniそのものよりも遅いですか?

A. HoudiniとHoudini Engineの速度の差はあまり無く、データ受け渡しが主な違いです。プレビュー ビデオでのMaya用Houdini Engineプラグインは最適化されていなかったので動作が速くありませんでした。

Q. Houdiniでシミュレーションを .bgeos に書き出して、絶対パスとしてMayaに読み込むことはできますか?($HIP/../.. のような相対パスは無理だと思いますが)

A. ファイルSOPを持つアセットに読み込むことができます。ファイルパス パラメータはアセットのトップレベルに上がり、Mayaに読み込まれます。

Q. Houdini Engineはジオメトリだけでなく、パーティクルやボリュームにも対応しますか?

A. Houdini Engineの最初のバージョンはパーティクルとボリュームに対応していますが、ホスト アプリケーションに出力する際にジオメトリに変換する必要があります。将来的には、ホスト アプリケーションへのボリューム出力に対応する予定です。

Q. 複数のデジタルアセットを互いに続ける事はできますか?

A. はい。ホスト アプリケーション内で互いに接続できます。

Q. mbファイルとして結果のジオメトリを書き出せますか?

A. アセットはmbファイルの一部として保存されます。結果はヒストリを削除することでベイクが可能です。ジオメトリ シーケンスの場合はジオメトリキャッシュとして保存する必要があります。