FBXの連番書き出し

Null SOPなどを使い、ボタンを押すとPythonコードを実行できるようにする。
Pythonコードを実行するノードの作成

node = hou.pwd()
geo = node.geometry()

import hou

node = hou.node("../rop_fbx5")

for i in range(0, 24):
    hou.setFrame(i)
    node.render() 

FBX出力ノードの出力が実行されるようになっている。ファイル名に$Fを入れてフレームごとに名前を変えて出力されるようになる。

複数の連番保存Null SOPを一括で実行する場合

各Null SOPのボタン名が”runScript”となっていると仮定し、同じようにNull SOPをつくり、スクリプトは以下のようにする。

node = hou.pwd()
geo = node.geometry()

import hou

# tree
node = hou.node("../export_trees")
node.parm("runScript").pressButton()

# rail
node = hou.node("../export_rail")
node.parm("runScript").pressButton()

0埋めして出力する場合

s@file_name = "SM_BlendMesh_" + sprintf("%02d", int(@Frame)) + ".fbx";

Detail Wrangleでsprintf()を使って0埋めした文字列をつくっておきます。

ROP FBXでの出力はこのようにしておきます。

Expressionに直接書き込む場合。

$HIP/file_`padzero(4, $F)`.bgeo

タイトルとURLをコピーしました