Choose and set current camera from list


import hou
import nodesearch
import toolutils

#set current viewport 
def setViewport(cam):
    scene_view = toolutils.sceneViewer()
    viewport = scene_view.curViewport()
    viewport.setCamera(cam)

# find cameras in scene
matcher = nodesearch.NodeType("cam")
network = hou.node("/obj/")
cams = matcher.nodes(network, recursive=True)
camList = []

#make list of camera name for UI
for i in cams:
    camList.append(i.name())

#set UI
if not len(camList)==0:
    cam = hou.ui.selectFromList(camList,message="Choose Camera")
    idx = cam[0]
    setViewport(cams[idx]) 
else:
    hou.ui.displayMessage("No Camera in Scene",buttons=("OK",))

このブログの人気の投稿

Houdini Path 表記法

HDAの作成、更新とバージョン管理について

action buttonを使ってジオメトリをattributeベースで選択するコード