2021-12-09

H19 hserver

Houdini 19 の hserver で大幅な改良があり、ネットワークライセンス環境で複数製品を使っている場合のライセンスのチェックイン・チェックアウトが柔軟になった。


現状、www.sidefx.com にある日本語ヘルプは H18.5のもの H19 に更新済なので、上記のリンクから日本語で読むことができる。以下は、過去情報。

Houdiniライセンスシステム

New

    Houdini19 から新しいライセンスシステムが利用可能になりました。 houdini.env ファイルにHOUDINI19_CHECKOUT_SYSTEM=1を追加することで、これを有効にすることができます。

Warning

    このライセンスシステムでは、hserverがHoudini19以降、且つ、sesinetdが18.5以降である必要があります。 また、このシステムでは、オプション、挙動、環境変数がすべて利用できるわけではありません。 それらはもはや不要になったか、または、もっと良いメソッド/ワークフローを介して利用できるようになっています。

ライセンスプロダクトは階層に基づいて順序が決定されます。 この階層は、金額的費用とそのプロダクトで利用可能な機能に基づいています(つまり、FX > Core > Engineの階層になります)。 このライセンスシステムは、リスト内のリストに基づいて動作します。 各サブリストはライセンスモード(Commercial, Education, Indie, Non Commercial)を意味します。 また、このリストの順序はサブリストの優先度をhserverに伝えます(最初のサブリストの優先度が一番高いです)。 これらのサブリストの順序は [Commercial, Education, Indie, Non Commercial] になっています。

Hythonライセンスリスト

[
[Engine, Core, FX],
[Engine EDU, EDU],
[Engine Indie, Indie],
[Apprentice]
]
ライセンスモードライセンスリスト
CommercialEngine, Core, FX
EducationEngine, Core, FX
IndieEngine, Core, FX
ApprenticeApprentice

この例では、ライセンスチェックアウト順の観点でみると、このリストのリストを [Engine, Core, FX, Engine EDU, EDU, Engine Indie, Indie, Apprentice] に変換することができます。 HythonのCommercialモードリストをよく見ると、 [Engine, Core, FX] のリストになっています。 EngineがHythonに最も適したライセンスタイプであり、しかも一番安価なので、ほとんどのユーザはCoreやFXのライセンス取得を試みる前にこれらのライセンスを使い果たしたいので一番最初にリストされています。 FXが一番高価でまったくHython向けに意図されていないのですが、FXをHythonの実行に使用することができるので、たいていのユーザが最後の頼みの綱としてこれを使用したいので最後にリストされています。 メインリスト内の各サブリストはライセンスモードを示し、そのサブリスト内のアイテムはアプリケーションに基づいた階層による個々のライセンス順を示します。

このシステムの柔軟な設計が活かせる場面:

仮にスタジオで何人かのアーティストがショーAで作業し、何人かがショーBで作業し、何人かがショーAとショーBの両方で作業している複数のプロジェクタが立ち上がっているとします。 ショーAではどのアプリケーションにもまったくFXライセンスを使用できないようにしたいとしましょう。 ショーA向けに単純な起動スクリプトを作成して、その起動スクリプトによって起動されるアプリケーションのコマンドラインまたは環境に --skip-licenses="Houdini-Master" を追加することでFXライセンスをスキップさせることができます。 システム管理者は、環境変数もhserverも他のアプリケーションも管理する必要がありません。 それどころか、各ショーで求められるライセンスの挙動を管理できるようにバージョンコントロールシステムシステムにチェックインされる起動スクリプトを作成することができます。 これによって、システム管理者はライセンスの挙動を更新してそれをバージョンコントロールシステムにプッシュすることができるので、次回アーティストが更新された時に新しいライセンスの挙動を反映することができます。

プロダクト交換

プロダクト交換とは、ライセンスを要求したアプリケーションのリストのリストに基づいて優先度の高いまたは低いライセンスとライセンス交換する処理のことです。 プロダクト交換の例:

  1. Houdini Coreが開かれました。Coreライセンスがチェックアウトされます。
  2. Houdini FXが開かれました。FXライセンスがチェックアウトされます。Coreライセンスは返却され、そのHoudini CoreアプリケーションはそのFXライセンスで実行中です。
  3. Houdini FXが閉じられました。Coreライセンスがチェックアウトされ、そのFXライセンスが返却されます。そのHoudni Coreアプリケーションは今はそのCoreライセンスで実行中です。

コマンドラインオプション

Note

    以下に載せているすべてのコマンドラインオプションは、hserverではなくアプリケーションに適用します。

--list-licenses-checks

    以下のどのオプションを使用する場合でも、アプリケーションが要求しようとするライセンスのリストを確認できるようにすることが重要です。 このオプションは、hserverにライセンスを要求する際に使用されるリストのリストをアプリケーションにプリントさせます。 そのプリントのエントリーの頭に-文字が付いていれば、hserverへの要求からそのエントリーが現在除外されていることを意味します。 ライセンスのチェックアウトを有効にするには、 --check-licenses にそのライセンスの内部名を追加します。 ライセンスのチェックアウトを無効にするには、 --skip-licenses にそのライセンスの内部名を追加します。

--check-licenses

    一部のアプリケーションでは、チェックアウトするライセンスを追加指定することができるものの、デフォルトではそのライセンスがチェックアウトされていない場合があります。 デフォルトのHoudini Coreの場合だと、Houdini Coreを起動してもHoudini FXライセンスをチェックアウトしませんが、 --check-licenses="Houdini-Master" 付けてHoudini Coreを起動するとHoudini FXのチェックアウトが有効になります。 チェックアウトするライセンスをさらに追加するには、ライセンス名の間に','を入れてください。

    Note
    一部のアプリケーションは、このオプションに関係なく特定のライセンスをチェックアウトすることができません。 例えば、Houdini FXはHoudini Engineライセンスをチェックアウトすることができません。

    Tip
    Houdini CoreとHoudini FXを同時に起動させることが多い場合、Houdini Core環境変数に --check-licenses="Houdini-Master" を追加することを推奨します。 詳細は以下を参照してください。

--skip-licenses

    一部のセットアップでは、いくつか色々な理由で特定のライセンスをスキップさせたい場合があります。 スタジオでは、特定の役割や特定のプロジェクト用にFXライセンスを確保して、他のみんなにしばらくの間Coreライセンスを使用してもらいたい場合があります。 場合によっては、アーティストに決してHoudini Non Commercialライセンスを掴ませたくないというのもありでしょう。 このオプションを使用すれば、特定のライセンスをスキップさせることができます。 このオプションの構文は、ライセンス名の間に区切り文字として,を入れた --skip-licenses="Houdini-Non-Commercial" です。

--skip-licenses-modes

    このオプションでは、ライセンスを要求する際にライセンスカテゴリ全体をスキップさせることができます。 このオプションは、ユーザに非商用ライセンスをチェックアウトさせたくない時に役立ちます。 利用可能なオプションは、commercialeducationindieapprentice です。

--check-license-modes

    このオプションは、ライセンスモードを上記の --skip-license-modes オプションと逆にしたい場合にのみ役立ちます。 ここで利用可能なオプションは --skip-license-modes と同じです。

環境変数

このシステムはアプリケーションを使用してライセンスの挙動を指示するので、そのアプリケーション関連のライセンスオプションを追加するための独自の環境変数が各アプリケーションに用意されています。 特定のタイプのすべてのアプリケーション(例えばHoudini Core)に対して一連のライセンス動作が必要な時、そのアプリケーションのライセンス環境変数を使用すると良いでしょう。 これらの環境変数の内容は、そのアプリケーションのコマンドラインオプションとまったく同じです。 例を挙げると、どのHoudini CoreもHoudini FXライセンスをチェックアウトするようにしたいのであれば、 HOUDINI_CORE_LIC_OPT="--check-licenses=Houdini-Master" の環境変数を用意します。

Tip
アプリケーションの環境変数が処理されてから、次にコマンドラインオプションが処理されます。 コマンドラインオプションが処理されると、その環境変数で使用されているオプションが上書きされます。

環境変数名アプリケーション
HOUDINI_LIC_OPTHoudini
HOUDINI_CORE_LIC_OPTHoudini Core
HOUDINI_FX_LIC_OPTHoudini FX
HOUDINI_INDIE_LIC_OPTHoudini Indie
HOUDINI_NC_LIC_OPTHoudini Apprentice
HOUDINI_EXPER_LIC_OPTHoudini Experimental
HOUDINI_PDG_LIC_OPTPilotPDG
HOUDINI_HYTHON_LIC_OPTHython and Hbatch
HOUDINI_MANTRA_LIC_OPTMantra
HOUDINI_KARMA_LIC_OPTKarma
HOUDINI_MPLAY_LIC_OPTMplay
HOUDINI_PLUGIN_LIC_OPTサポートされているすべてのプラグイン(例えば、Unity、Unreal、Mayaなど)。

このシステム下でアプリケーションを起動すると、そのアプリケーション固有のライセンス環境変数がチェックされてから、コマンドラインオプションがチェックされます。 例えば、Houdini Coreを起動すると、ライセンスオプションは HOUDINI_CORE_LIC_OPT 環境変数がチェックされてから、コマンドラインオプションがチェックされます。

Houdini19ライセンスシステムへの移行ガイド

Note
これら2つのライセンスシステムは根本的に異なっているので、このガイドはライセンス取得の動作をほぼ同様にするためのガイドにすぎず、 以前のシステムとまったく同じライセンス取得の動作を得る方法として考えないでください。

新機能とこのシステムの挙動の変更によって、このシステムに切り替える前に知っておくべき項目がいくつかあります。 最大の変更点は、以前に存在していたライセンス環境変数とライセンスオプションすべてがこのリリースから非推奨になり、この新しいシステムで用意されたオプションを推奨するようになったことです。 このシステムは、アプリケーション側でライセンス取得を制御することができるように根本的な変更が施されているので、実行中にライセンスシステムを変更することは不可能で、起動時にどちらのシステムを使用するのか選択することしかできません。

Warning
以前に存在していたすべてのライセンスオプション(つまり、環境変数)はこのリリースで非推奨になり、次のリリースで完全に削除される予定です。

以下のテーブルには、一部の環境変数値をHoudini19ライセンスシステムに変換するためのおおまかなガイドを載せています。 一部の値はもはやこの新しいシステムで適用されなくなったので省略されています。

HOUDINI_SCRIPT_LICENSEHoudini19環境オプション
hbatch -R--skip-licenses="Houdini-Escape,Houdini-Master" を追加します。
PDG_LICENSE_MODEHoudini19環境オプション
pdg_onlyこれは、アプリケーションがライセンス(つまりPilotPDG)を使用する時に既存のPDGライセンスリストを使用するだけなので、何もアクションを実行する必要はありません。 Core
engine_only --check-licenses="Houdini-Engine"--skip-licenses="Houdini-Escape,Houdini-Master" を追加します。
houdini_core_only--check-licenses="Houdini-Escape"--skip-licenses="Houdini-Engine,Houdini-Master" を追加します。
houdini_fx_only--check-licenses="Houdini-Master"--skip-licenses="Houdini-Escape,Houdini-Engine" を追加します。
HoudiniコマンドラインHoudini19オプション
-apprentice--skip-license-modes=commercial,education,indie を追加します。
-indie--skip-license-modes=commercial,education,apprentice を追加します。
-core--check-licenses="Houdini-Escape"--skip-licenses="Houdini-Master--skip-license-modes="education,indie,apprentice" を追加します。

古いシステムではhserverとその挙動を制御する環境変数の複雑なネットワークでライセンスを取得していましたが、Houdini19の新しいシステムでは、アプリケーション側で使用を許可したいライセンスの完全リストを決める仕様に変わりました。 そういった理由から、hserverオプションの --relax-non-graphical/-g--render-only/-n は、このシステムでは使用されなくなりました。 これらのオプションは古いシステムを使用したアプリケーションに対してまだ設定することができますが、このシステムでは、アプリケーション側でHoudini19ライセンス取得の挙動を制御することからそれらのオプションは不要なので単に無視されます。

Houdini19のライセンス取得ではHTTP(S)のみが使用され、古いシステムの挙動や古いシステムとの通信プロトコルに下位互換を持たせる予定はありません。 hserverは同時に両方のシステムを使用して実行することができますが、古いシステムの方に必要な情報が用意されないためにhserverが何をすべきか決めることができないのでアップグレード/ダウングレードは無効になります。


ファイル

  1. 下記のファイルをダウンロードする。
  2. ダウンロードした hserver19.txt をインストールした Houdini のドキュメントフォルダに入れる。
    • 例えば Houdini が C:\Program Files\Side Effects Software\Houdini 19.0.460\ にインストールされている場合、そのディレクトリ以下の houdini\help\ 以下のどこかにファイルをコピーする。
    • 本来 hserver.txt は help 以下の ref/utils 以下に存在するが、ここは zip ファイルになっているので、例えば licenses ディレクトリ以下に C:\Program Files\Side Effects Software\Houdini 19.0.460\houdini\help\licenses\hserver19.txt として置けば、Houdini 起動後 F1 で表示するヘルプブラウザに http://127.0.0.1:48626/licenses/hserver19 とアドレスを入力すればこのファイルを一番上の画像のように表示できる。

0 件のコメント:

コメントを投稿