Houdini起動時にcustomのscript/HDA用pathを設定するには?
Houdini起動時にcustomのscript/HDA用pathを設定するには、以下のスクリプトを123.pyとして、$HOME/houdiniX.Y/scriptsに保存する。
Houdiniは起動時にこの $HOME/houdiniX.Y/scripts を毎回チェックし、123.pyがあれば自動的に実行する。
まずスクリプト環境変数について:
sys.path.append()で、まずスクリプト用のOS環境変数を設定している。これを実行するこどで、Houdiniでのpython scriptから、importでこの中にあるスクリプトを読み込むことができる。
次にHDA用のhoudini環境変数について:
hou.putenv('HOUDINI_OTLSCAN_PATH',hda_path)の部分で、既存のHDAパスにさらにカスタムのHDAパスを加えている。これにより、特定のフォルダに保存したHDAを自動的に読み込ませることができる。
Houdiniは起動時にこの $HOME/houdiniX.Y/scripts を毎回チェックし、123.pyがあれば自動的に実行する。
まずスクリプト環境変数について:
sys.path.append()で、まずスクリプト用のOS環境変数を設定している。これを実行するこどで、Houdiniでのpython scriptから、importでこの中にあるスクリプトを読み込むことができる。
次にHDA用のhoudini環境変数について:
hou.putenv('HOUDINI_OTLSCAN_PATH',hda_path)の部分で、既存のHDAパスにさらにカスタムのHDAパスを加えている。これにより、特定のフォルダに保存したHDAを自動的に読み込ませることができる。
import sys
import hou
def set_custom_script_path():
#add custom script path
#you can put any path in the array as much as you want.
import_list = [
r'C:/hoge/hoge/scripts',
]
#add the path ti the system environment path
for i in import_list:
sys.path.append(i)
print('extra path is {}'.format(i))
def add_custom_HDA():
#add custom HDA path
#$HH/otls/ is the path Houdini uses to load the default HDA
#We need to keep that as it is, in addtion, we can add custom path.
hda_paths = [
'$HH/otls/',
r'C/hoge/hoge/hda',
]
#set the HDA path to Houdini environment value
hda_path = ';'.join(hda_paths)
hou.putenv('HOUDINI_OTLSCAN_PATH',hda_path)
#after adding the HDA path, we need to reload the HDA again.
hou.hda.reloadAllFiles()
print('extra HDA path is {}'.format(hda_paths[1]))
def set_frame_range():
#Also, you can execute any python script. Even it's possible to make nodes.
hou.playbar.setFrameRange(1001, 1100)
hou.playbar.setPlaybackRange(1001, 1100)
hou.setFrame(1001)
#execute the functions
set_custom_script_path()
add_custom_HDA()
set_frame_range()