We are trying to use Arnold Operators in Houdini through the htoa plugin. The way they work is that they are nodes that you chain together and plug into Houdini rops to affect render parameters in Arnold.
It’s a really cool workflow, but when we submit a job to deadline via the Deadline node - those operator nodes get treated as dependent jobs (which they are not).
Is there a callback for the Deadline node that could flag a node type to ignore? Or some other way to deal with this? The Arnold guys are keen to know as well.
Thanks!
–
Laurence Cymet
CG Supervisor
FOLKS
Storytelling is our business.
Montréal | Toronto
Glad I’m not the only one. I’m iterating with support who is helping to resolve this, with the help of the Arnold team. Sounds like the Deadline ROP node needs to have a catch the ignore the operator node types.
For anyone who wants to fix this themselves in the meantime, here is the recommendation from the Arnold team. Big thanks to Julian Hodgson.
Check out htoa/houdini/scripts/python/htoa/operator.py. This builds some python dicts mapping houdini rop names to arnold rop names:
from arnold import *
import hou
def getOperatorMap():
global operator_map, rop_map
operator_map.clear()
rop_map.clear()
universe_is_active = AiUniverseIsActive()
if not universe_is_active:
AiBegin()
AiMsgSetConsoleFlags(AI_LOG_NONE)
AiLoadPlugins(htoa.searchpath.plugin)
nentry_iter = AiUniverseGetNodeEntryIterator(AI_NODE_OPERATOR)
while not AiNodeEntryIteratorFinished(nentry_iter):
nentry = AiNodeEntryIteratorGetNext(nentry_iter)
name = AiNodeEntryGetName(nentry)
operator_map["arnold::%s" % name] = name
if not universe_is_active:
AiEnd()
# build reverse map
rop_map = {v: k for k, v in operator_map.iteritems()}
So the keys in the operator_map should be the list of all the ROPs that are in fact Arnold ROPs.
For anyone having this issue, @cmoore whipped up a version of the Deadline ROP that should resolve this issue. But we haven’t had anyone test it yet in a real environment. So if you’re feeling brave give it a spin and let us know!
To install, backup and replace the following file with the one attached:
Thanks so much Justin. Our initial tests appear to work, in both a scene that uses every operator node available, and a production scene. Stay tuned for more details as we test further.
Deadline repo 10.0.22.3 and Houdini 18 with htoa 5.2