Search the Community
Showing results for tags 'headless'.
-
I am curious if it is possible to clock how long it takes to cook a surface operator and interrupt if it goes above a certain limit, preferably within a python SOP? Backstory; there are cases when a polyexpand2D node takes excessively long time to cook. I've contacted SideFX for this unexpected behavior. Long story short, this is what they recommended: And it does, when you translate the input geometry of the ‘polyexpand2d’ SOP the results do vary. So now I am trying to figure out a way to clock a particular section of the network tree, and if it takes longer than X amount of time, I want to translate the input ever so slightly. Hopefully this will help it so it doesn't take +1 hour to cook (average is somewhere between 1-5 seconds). I have been looking into hou.perfMon but that didn't really lead me anywhere. Let me know if anyone has any suggestions. Pseudo Code: import time trans_node = hou.node("../translate1") cook_node = hou.node("../COOK_THIS") start = time.time() time_limit = 5.0 rot= 0.0 while current_time < time_limit: try: cook_node.cook() except Timeout: rot= random(0.0, 360.0) trans_node.parm("rx").set(rot) cook_node.cook() continue Thank you!
-
Hello I'm sending alembic rops to hqueue and there's a lot of preroll. Even with alfred-style progress turned on, I have no feedback on what's going on. I was thinking that I could add a python node to write to the stdout (which I though would show up in the hqueue logs) like so: import sys f= hou.frame() sys.stdout.write('frame: '+str(f) + '\n') But it doesn't work. Any ideas ? When I start houdini with the -foreground option (so that the shell it launches from doesn't spawn a new process and should receive outputs) and write to stdout, it only shows up in the python console Thanks