P4Houdini

P4Houdini は、Houdini と Perforce を統合し、 Houdini インターフェイス内で直接、シームレスにバージョン管理ができるよう作られたプラグインです。主な機能には、自動および手動によるファイル管理、依存関係 (ディペンデンシー) のスキャンがあり、ファイルの追加やチェックアウト、変更リストの送信といった、ファイル操作用の便利なツールも含まれています。追加アクションのスクリプトを作成するための Python 用 API も実装されており、個人とスタジオのどちらのワークフローでも効率の向上を図れます。

以前の P4Houdini は有償でしたが、SideFX がこのプラグインを取得した2024年5月下旬以降、どなたもお使いいただけるよう、SideFXLabs にて無料で提供しています。

P4Houdini プラグインのインストール

P4Houdini プラグインは、Houdini 20.5.304 以降の SideFXLabs でダウンロードしたら、そのままお使いいただけるよう作られています。旧バージョンでも動作しますが、お使いのシステム環境に、p4python パッケージをご自身で手動インストールする必要があります。


以下、プラグインの初回インストール手順です:

  1. 20.5.304 以降の SideFXLabs をダウンロード & インストールします。
  2. $SIDEFXLABS/optional/P4Houdini/ 内にある P4Houdini.zip を任意のフォルダに解凍します。
  3. 解凍した zip ファイルから P4Houdini.json ファイルをコピーし、$HOUDINI_USER_PREF_DIR/packages/ フォルダにペーストします。
  4. 今ペーストした P4Houdini.json ファイルを編集し、ファイル内の $P4HOUDINI パスを、手順2で P4Houdini.zip の解凍先に指定した場所に変更します。
  5. Houdini を起動し、お使いのシェルフセットに P4Houdini シェルフを追加します。


Perforce ディポへの接続

インストールが成功したら、プラグインを使用する際に使うワークスペースの設定に進めます。

それには、接続先となる Perforce ディポの情報が必要になります。以下の項目が必要です:

  • P4PORT - 接続先サーバのアドレス。通常は次のように表記されます: ssl:companyname.perforce.assemble.com:1667
  • P4USER - Perforce へのログインの際に使用するユーザ名。

これらの情報を用意したら、まずご自身で Perforce の認証を行ってください。これには P4V が使われるのが一般的ですが、コマンドラインが良ければそれでも可能です。最初にご自身でログインしていただくのは、ユーザに代わって、プラグインにログインさせることができないためです。プラグインは P4tickets を取得します。この P4tickets は、認証作業をキャッシュ化したものだと考えてください。これにより、本来のアクセス権保持者がお客様であることを、サーバが認識することができます。

上記が完了したら、Houdini ワークスペースのセットアップに進めます。

  1. Houdini を起動し、P4Houdini シェルフを開きます。
  2. Set Workspace ボタンをクリックし、Server Address and User 欄を記入します。その後、Workspace 欄の横にあるボタンを押してください。これで、使用可能な全てのワークスペースが自動的にリストされるので、そこから1つ選びます (または手動で入力してください)。
  3. Apply を押します。
  4. シェルフ内の Debug Config ボタンをクリックし、想定した通りに接続できていることを確認してください。




各種機能

以下、P4Houdini プラグインの主要機能の一部を紹介します。

P4Houdini シェルフ

P4Houdini シェルフには、作業効率の大幅な向上につながる様々なツールが用意されています。プラグインのインストールや接続のデバッグのための便利なツールのほか、以下で紹介する数多くの P4Houdini の機能を実行するための手動ボタンが揃っています。

ファイルの追加とチェックアウト

Houdini のファイルを直接追加したりチェックアウトできます。このプラグインには、HIP や HDA で保存が押されると毎回、追加するかチェックアウトするかを尋ねるプロンプトの自動表示機能が含まれています。面倒な承認エラーを防げるうえ、新しい要追加ファイルへの印のつけ忘れを防ぐリマインドにもなり、たいへん便利です。

シェルフツール、各種パラメータや HDA のコンテキスト (右マウスボタン) メニュー からも、追加またはチェックアウトしたいファイルに手動で印をつけることもできます。

別のユーザによってファイルがチェックアウト済みである場合、プラグインがお知らせします。それを見て、引き続きファイルをチェックアウトするか、単に書き込み可能にするかを決めると良いでしょう。

変更リストの送信

Houdini の UI から変更リストを送れます (一部の変更のみでも可)。便利なアイコン表示により、送信中の各ファイルに対して行われるアクションの種類 (追加、削除、チェックアウト等) を確認できます。別のユーザによってファイルがチェックアウト済みであるかどうかも確認できます。

送信する際は、必ず直前に、リストの内容を加筆修正するとよいでしょう。

依存関係 (ディペンデンシー) のスキャン

このプラグインには、hip ファイルをスキャンして、ディスクへのファイルの書き出しを行うノード(ユーザが作成したカスタムツールも含む) を検出するシェルフツールも同梱されています。Houdini 内で使用している Perforce によるファイルのトラッキングが済んでいない場合に便利です。ご存じのように、シーンのクック中にファイルがロックされてノードエラーが起こるのは厄介なものです。

このツールは $F エクスプレッションも理解できます。

前のバージョンに戻す

HIP や HDA でミスをして前のバージョンに戻したくなった時、P4Houdini プラグインなら、シェルフツールとコンテキスト (右クリックボタン) メニューのオプションのどちらからでも、ファイルを前のバージョンに戻せます。バージョンを戻した後は、自動的に変更後のファイルが読み込まれます。

コンテキストメニュー

文字列のパラメータおよびノードからも、複数のオプションを搭載した P4Houdini のコンテキスト (右クリックボタン) メニューを使用できます。HDA やファイルのチェックアウトといったファイルの管理が手早くできて便利です。

Python の API

例えば、プラグインに実行させたいアクションのスクリプトを手動で作成したい時、プラグイン同梱の多くの公式メソッドを使用するだけで作れます。フレーム処理前にファイルをチェックアウトしたい時や、フレーム処理後にファイルを追加したい時に便利です。


CREATED BY

PAUL AMBROSIUSSEN

Paul Ambrosiussen is currently a Technical Artist at Bismuth Consultancy. He was the Lead of the Labs initiative at SideFX before that. Paul finished his BASc in International Game Architecture and Design at NHTV University of Applied Sciences in Breda. Paul enjoys writing tools to support effective art-pipelines, and maintaining tool / workflow quality for the artists he is assisting. His goal is to help others create amazing things in a better, faster and more flexible way. He creates tutorials, gives live lectures, attends events, and presents custom workshops to customers.

More from Paul Ambrosiussen