ジャンプリスト(Jump List)とは
$HIP
や $JOB
のようなもの。
いわゆる環境変数(Environment Variables)みたいなもので、Linuxの $~
に相当する。
どうやって設定すればいいのだろうか?
この $HIP
や $JOB
、かなり使い勝手がよく、アーティストからも使用を好まれる。
しかしながら、パイプライン上でこれを使用したい場合には $HIP
や $JOB
以外にも使いたい項目が増える場合がある。
そこで、設定するために使用するのが jump.pref
。
これを HOUDINI_PATH
か HOUDINI_USR_PREF_DIR
の直下に置く。
ディレクトリわからない時には、Command Line Toolで hconfig -p
と叩くと、設定されてるパスが表示される。
中身
例えば、
$SHOT
$TEXTURE
これらをパイプライン上で縛っておけば、パイプライン上の長いパスコントロールが可能になるので、気持ちくアーティストに使ってもらえると思う。
このファイルはHoudiniの起動時に呼ばれるので、編集したらHoudiniの再起動を行う。
ちなみに、HoudiniのFile Dialogウィンドウでもジャンプリストが作成可能だが、これの設定ファイルは基本 HOUDINI_USER_PREF_DIR
の直下に作成されていく。
スクリプトでジャンプリストにパスを設定する
結果的に正攻法を書くと、現状では多分これ。
import os
project_root = 'E:/project_a'
shot = 's001'
cut = 'c001'
shot_path = os.path.join(project_root, 'work', shot, cut).replace(os.path.seq, '/')
texture_path = os.path.join(shot_path, 'texture').replace(os.path.seq, '/')
cmd = 'setenv {}={}'.format('SHOT', shot_path)
hou.hscript(cmd)
cmd = 'setenv {}={}'.format('TEXTURE', texture_path )
hou.hscript(cmd)
これで、それぞれ次のところに変数が通る。
SHOT => E:/project_a/work/s001/c001
TEXTURE => E:/project_a/work/s001/c001/texture
実のところ、Houdini Object Modelにはちゃんと次の関数が用意されている。
しかしながら、ことこの変数設定に関してはHScriptの方を利用した方がいいと思う。
というのも、なぜかHOMを使った場合だとVariablesウィンドウ(Edit->Aliases and Variables...)に表示されないから。
ちゃんと値としては入っているので問題なく使えるのだが、「見えなくなる」というのは、それは恐怖であるもので。。