On this page |
概要 ¶
Houdiniは色々な使用場面に対応できるようにアセットのバージョン管理のための2つの異なるシステムをサポートしていますが、それらのシステムは互換性があります:
-
バージョン番号をアセットの内部名の一部として組み込むことができます。例えば、
mynode::2.0
。これは、アセットをバージョン毎に完全に別のアセットにします。これによって、同じシーンファイル内に異なるバージョンのアセットを共存させることができます。ユーザがノードを作成すると新しいバージョンのノードが使用されますが、既存ノードは変更されることなく古いバージョンのまま以前通りの方法で作業を続けることができます。
-
ノードの挙動、入力の解釈、パラメータインターフェースなどに対して何も破壊することなく大改修することができます。
-
手動で古いノードを更新する必要がありません。
-
自動的に古いノードをアップグレードする仕組みは用意していません。
-
-
アセット定義で Version フィールドを使用することができます。アセットインスタンスは、アセットのバージョン文字列を読み込んだ時にシーンファイルが保存されてからそのバージョン文字列に変更があった場合に、 Upgrade Handler Script (そのスクリプトがあれば)を実行します。このスクリプトは、ノードインスタンスを編集して、新しいバージョンに 変換 することができます。
これは、通常では大改修ではなくマイナーな下位互換のあるアセット変更、特に新しいパラメータの追加で役立ちます。これはスタジオ環境でTDが作業を行ない、アーティストのツールを自動的にアップグレードする場合に非常に役立ちます。
-
既存アセットを新しい(下位互換のある)機能を持ったアセットに自動的にアップグレードすることができます。
-
アセットを更新する度に、アップグレードスクリプトを手動で更新し、古いインスタンスを新しいインスタンスに変更する作業をスクリプト化する必要があります。スクリプトがいくつかの古いバージョンのどれかを最新バージョンにアップグレードする機能を維持する必要性があるかもしれません(例えば、スクリプトがバージョン1, 2, または 3のいずれかをバージョン4に更新できるようにする必要があります)。
-
2つ目のシステムは、歴史的にネームスペースが追加される前のバージョン管理ソリューションでした。これが今でも役立つ場合のために残しています。
Note
アセットの変更をユーザに伝搬するような集中管理システム(例えば、ネットワークドライブやバージョンコントロール)があるスタジオでは、どちらのシステムも自動的に他のユーザのアセットだけをアップグレードします。
How to ¶
To... | Do this |
---|---|
下位互換バージョンのアセットを新しく作成する |
新しくアセットを作成します。その内部名を選択する時、以前のバージョンと同じ名前(とネームスペース)を使用しますが、それよりも高いバージョン番号を付けます。 例えば、古いアセットが 詳細は、ネームスペースとバージョンを参照してください。 |
古いバージョンを新しいバージョンに自動的にアップグレードするイベントハンドラーを作成する |
|