Support for caching houdini fractional frames

I`m trying to cache geometry with subsamples using houdini standard nodes(file cache, rop geometry etc). For example collision geometries with half frame substeps. Submitting works, but when job renders only integers frames are saved to disk. I looked into some python files and it seems currently frame is integer type only?

Expected result for AgentA_CollisionVdb_ver001_$FF.bgeo.sc :

AgentA_CollisionVdb_ver001_1.0.bgeo.sc
AgentA_CollisionVdb_ver001_1.5.bgeo.sc
AgentA_CollisionVdb_ver001_2.0.bgeo.sc
AgentA_CollisionVdb_ver001_2.5.bgeo.sc

Can you please add support for rendering substep data from houdini?

thank you!

It seems we have an internal ticket for this already. We’re blocked on the fact that Deadline itself isn’t able to track fractional frames itself. They’re whole integer numbers. It gets even more challenging when the frames are passed off to other tools like Draft or our Shotgun/FTrack/NIM integrations.

Would it be possible to work around this by changing the time base from say, 60 fps to 120 fps?

running 60/120 is a workaround. But unfortunately a costly one(timewise), prone to error, custom setups/adjustments,later retimings/renaming. Also many times one changes substeps trough the day. From 2 for testing, 4 for final etc, even more when penetrations occurs and need to be taken care of.
Change to FPS on shot is not a good solution for frequent adjustments, specially if thats a shot for multiple departments..., but its understandable that its a big one if whole deadline product is integer based.. Up to you if youre up for the task…

I use commandscript submit.

“C:\Program Files\Side Effects Software\Houdini 16.5.378\bin\hython.exe” -c “hou.hipFile.load(‘L:/TEST/deadlinetest.hip’);node=hou.node(‘obj/geo1/filecache1/render’);node.render(frame_range=(1,10,0.25),verbose=True,output_progress=True)”

use Monitor -> Submit -> Miscellaneous -> CommandScript .

Well, yes, you can do that. But that will be a one machine job then right?. And underutilized one.
A was talking about possible solution that will be more like a “typical” render job with all the improvements Deadline can bring. Processed as multiple tasks, frames per task options, or concurent tasks. So user can have a option to utilize resources as he finds fit and multiple machines can process it. I for example have 64 thread workstation and for caching some tasks,that are single threaded use 16concurent tasks or other deadline features. And i love to used them with subframes too. It makes stuff 16x faster, no brainer. But right now, thats not possible for subframes, without major changes to the deadline system. Lets hope more users to request it :smile:

Yeah, that’s really how this is going to happen. We’ve had similar asks for C4D and Maya’s a special case where it natively supports 1/2 frames. That wouldn’t do much good if you wanted to divide frames by a different fraction.

+1

Is there any progress on this? Writing sub-frame / fractional data for simulations is pretty important. This would be very useful in the FX world!

1 Like

+1000 :slight_smile:

Hi there,

I’d be interested in hearing more about the internal ticket’s progress as we’re being asked to accommodate this very piece of functionality.

Cheers

Jamie

I just got stung by this as well, be nice to have substep support, even if its just “dumb” and only supports a single job/task, better than nothing

Any update on this? Last message on here from Thinkbox was 2.5 years ago

1 Like

Still my main frustration with Deadline. I’m having trouble accepting that there is no solution to this.

Hey @Thinkbox Deadline Team, any solution to this?

This is essential!

I managed to solve the subframe issue by using PDG connected to deadline instead of the deadline plugin. the Deadline TOP node will handle all the subframes beautifully.

4 Likes