Houdini 19からは新しいライセンスシステムが用意されています。houdini.envファイルにHOUDINI19_CHECKOUT_SYSTEM=1を追加して有効にしてください。
本システムでは、hserverがHoudini 19以上、sesinetdが18.5以上である必要があります。また、すべてのオプション、挙動、環境変数がこのシステムで利用できるわけではありません。もう必要ではないか、より良い方法/ワークフローで行うことができるからです。
ライセンス製品は、階層に基づいて順序付けられています。階層は、その製品の財務コストと利用可能な機能に基づいています(例:FX>Core>Engine)。 このシステムは、リストのリストに基づいて動作します。各サブリストは、ライセンスモード(商用、教育、インディーズ、非商用)を表しています。また、リストの順番は、どれがより重要でどれがより重要でないかをhserverに伝えます(最初のサブリストが最も重要)。サブリストの順番は[Commercial, Education, Indie, Non Commercial]です。
Hython License List
[ [Engine, Core, FX], [Engine EDU, EDU], [Engine Indie, Indie], [Apprentice] ]
License Mode |
License List |
---|---|
Commercial |
Engine, Core, FX |
Education |
Engine EDU, EDU |
Indie |
Engine Indie, Indie |
Apprentice |
Apprentice |
この例では、ライセンスのチェックアウト順序を別の方法で考えると、リスト内リストは[Engine, Core, FX, Engine EDU, EDU, Engine Indie, Indie, Apprentice]に変換できます。hythonの商用モードのリストを詳しく見てみると、[Engine, Core, FX]があります。 Engineが最初に挙げられているのは、アプリケーションに最も適したライセンスタイプであり、また最も安価であるため、ほとんどのお客様はCoreやFXを試す前にこれらのライセンスをすべて使い切りたいと考えるでしょう。 FXは最も高価で、正確にはhythonのためのものではないが、hythonを動作させるために使用することができるので、ほとんどの顧客は最後の手段としてこれを使用したいと考えているので、最後に置かれています。 メインリスト内の各リストは、それぞれのライセンスモードに対応しており、リスト内のアイテムは、アプリケーションに応じて階層化された個々のライセンスとなっています。
このシステムの柔軟な設計を活かせるシナリオ
スタジオに複数のプロジェクトがあり、あるアーティストがショーAを担当し、あるアーティストがショーBを担当し、あるアーティストが2つの間で作業をしている場合、ショーAでは、FXライセンスをいかなるアプリケーションにも使用できないとします。 ショーA用のシンプルな起動スクリプトを作成し、起動スクリプトで起動されるアプリケーションのコマンドラインまたは環境に--skip-licenses="Houdini-Master"を追加することで、FXライセンスをスキップすることができます。システム管理者は、環境変数やサーバー、その他のアプリケーションを管理する必要はありません。代わりに、起動スクリプトを作成し、それをバージョニングコントロールシステムにチェックインすることで、希望するライセンス動作を管理することができます。 これにより、管理者がライセンス動作を更新し、それをVCSにプッシュすれば、次回アーティストがアップデートした際には、新しいライセンス動作が適用されることになります。
プロダクトの交換
プロダクトの交換とは、ライセンスを要求しているアプリケーションのリストに基づいて、あるライセンスを、より重要度の低いライセンスと交換するプロセスです。プロダクトの交換の一例:
- Houdini Coreを起動します。Coreのライセンスをチェックアウトします。
- Houdini FXを起動します。FXライセンスをチェックアウトします。Coreライセンスが返却され、Houdini CoreアプリケーションはFXライセンスから実行されます。
- Houdini FXが終了しました。Coreライセンスをチェックアウトし、FXライセンスを返却しました。CoreアプリケーションがCoreライセンスで動作するようになりました。
コマンドラインオプション
注意事項
ここでのすべてのコマンドラインオプションは、アプリケーションに適用され、hserverには適用されません。
--list-licenses-checks
これらのオプションのすべてにおいて、アプリケーションが要求しようとするライセンスのリストを見ることができることが重要です。このオプションは、アプリケーションが hserver にライセンスを要求する際に使用されるリストをプリントします。エントリの前に「-」の文字がある場合は、そのエントリが現在 hserver へのリクエストから除外されていることを意味します。ライセンスのチェックを有効にするには、その内部名称を --check-licenses に追加します。ライセンスのチェックを行わないようにするには、内部の名前を --skip-licenses とします。
--check-licenses
アプリケーションによっては、デフォルトではチェックされていないものの、チェック可能な追加ライセンスがある場合があります。Houdini Coreの場合、Houdini FXのライセンスはチェックされません。--check-licenses="Houdini-Master "を指定すると、Houdini FXのチェックが有効になります。チェックするライセンスを追加するには、ライセンス名の間に','を追加します。
注意
このオプションに関わらず、特定のライセンスをチェックアウトできないアプリケーションがあります。たとえば、Houdini FXでは、Houdini Engineのライセンスをチェックアウトできません。
ヒント
Houdini CoreとHoudini FXを同時に実行することが多い場合、Houdini Coreの環境変数に--check-licenses="Houdini-Master "を追加することをお勧めします。詳細については以下を参照してください。
--skip-licenses
セットアップによっては、さまざまな理由で特定のライセンスをスキップしたい場合があります。スタジオでは、特定の役割やプロジェクトのためにFXライセンスを予約し、それまでは他の人にCoreを使ってもらいたい場合もあるでしょう。 場合によっては、アーティストがHoudiniの非商用ライセンスを取得したくないということもあるでしょう。このオプションでは、特定のライセンスをスキップすることができます。このオプションのシンタックスは--skip-licenses="Houdini-Non-Commercial "で、ライセンス名の間のセパレータには , が使用されます。
--skip-license-modes
このオプションは、ライセンスをリクエストする際に、ライセンスカテゴリー全体をスキップすることができます。このオプションは、ユーザーが非商用ライセンスをチェックアウトしたくない場合に便利です。
--check-license-modes
このオプションは、以前の--skip-license-modesオプションからライセンスモードを元に戻す必要がある場合にのみ有効です。このオプションは --skip-license-modes と同じオプションがあります。
環境変数
このシステムでは、アプリケーションがライセンスの動作を決定するため、各アプリケーションは、アプリケーション全体のライセンスオプションを追加するための独自の環境変数を持っています。特定のタイプのすべてのアプリケーション(例:Houdini Core)に対して一連のライセンス動作が必要な場合、アプリケーションライセンス環境変数を使用することができます。 これらの環境変数の内容は、アプリケーションのコマンドラインオプションと全く同じです。例えば、全てのHoudini CoreがHoudini FXのライセンスをチェックする必要がある場合、環境変数はHOUDINI_CORE_LIC_OPT="--check-licenses=Houdini-Master "となります。
ヒント
アプリケーションの環境変数が処理された後に、コマンドラインオプションが処理されます。コマンドラインオプションが処理されると、環境変数で使用されていたオプションが上書きされることがあります。
環境変数名 |
アプリケーション |
---|---|
HOUDINI_LIC_OPT |
Houdini |
HOUDINI_CORE_LIC_OPT |
Houdini Core |
HOUDINI_FX_LIC_OPT |
Houdini FX |
HOUDINI_INDIE_LIC_OPT |
Houdini Indie |
HOUDINI_NC_LIC_OPT |
Houdini Apprentice |
HOUDINI_EXPER_LIC_OPT |
Houdini Experimental |
HOUDINI_PDG_LIC_OPT |
PilotPDG |
HOUDINI_HYTHON_LIC_OPT |
Hython and Hbatch |
HOUDINI_MANTRA_LIC_OPT |
Mantra |
HOUDINI_KARMA_LIC_OPT |
Karma |
HOUDINI_MPLAY_LIC_OPT |
Mplay |
HOUDINI_PLUGIN_LIC_OPT |
All Supported Plugins (i.e. Unity, Unreal, Maya, etc). |
このシステム下でアプリケーションが起動すると、アプリケーション固有のライセンス環境変数がチェックされ、次にコマンドラインオプションがチェックされます。例えば、Houdini Coreが起動した場合、HOUDINI_CORE_LIC_OPT環境変数がチェックされ、次にコマンドラインオプションでライセンスオプションがチェックされます。
Houdini 19 ライセンスシステムへの移行ガイド
備考
この2つのシステムは基本的に異なっているため、このガイドは、ライセンシングにおいてほぼ同様の動作を与えるためのガイドであり、以前のシステムから正確なライセンシングの動作を得るための方法として解釈すべきではありません。
新しい機能とシステムの仕組みの変更に伴い、このシステムに切り替える前に注意すべき点があります。最大の変更点は、これまでに存在していたすべてのライセンス環境変数とオプションがこのリリースで廃止され、この新しいシステムが提供するオプションが採用されたことです。このシステムは、アプリケーションがライセンスを制御する方法を根本的に変えるものであるため、ランタイムにライセンスシステムを変更することはできず、起動時にのみ選択することができます。
警告
このリリースでは、既存のライセンスオプション(環境変数など)はすべて非推奨となっており、次のリリースで完全に削除される予定です。
以下の表は、いくつかの環境変数の値をHoudini 19のライセンスに変換するための大まかなガイドです。いくつかの値は、この新しいシステムではもはや適用されないため省略されています。
HOUDINI_SCRIPT_LICENSE |
Houdini 19 Environment Options |
---|---|
hbatch -R |
Add |
PDG_LICENSE_MODE |
Houdini 19 Environment Options |
pdg_only |
No action should be taken as this just uses the existing pdg license list when the application uses one (i.e. PilotPDG). |
engine_only |
Add |
houdini_core_only |
Add |
houdini_fx_only |
Add |
Houdini command line |
Houdini 19 Options |
-apprentice |
Add |
-indie |
Add |
-core |
Add |
Houdini 19のライセンスは、HSERVERや動作を制御する環境変数の複雑なネットワークから、アプリケーションが使用を許可されるべきライセンスの完全なリストを決定します。そのため、このシステムでは hserver のオプション --relax-non-graphical/g や --render-only/n は使われなくなりました。これらのオプションは、旧システムを使用しているアプリケーションではまだ設定することができますが、新しいシステムでは、アプリケーションがHoudini 19ライセンスのライセンス動作を制御するため、これらは必要ないので単に無視されます。
Houdini 19のライセンスは、HTTP(S)のみを使用しており、旧システムの動作や旧システムとの通信プロトコルにおいて、いかなる後方互換性も提供しないでしょう。Hserverは両方のシステムを同時に使用することができますが、古いシステムが必要な情報を提供しないため、Hserverは何をすべきか決定することができず、アップグレード/ダウングレードは無効になります。