Andrew Graham
March 27, 2019 01:22:05
If anyone has a solution to this in TOPS, I'd love to see an example to #help me work it out- I cant get a subset frame range to work downstream which is super needed. If I generate a cache and sim with preroll (eg 900-1100), I can't set up per frame depends with a mantra rop/opengl rop to render to create a smaller shot range (1000-1100). I've tried map by range, partition by range. none of them seem to get me there with per frame dependencies. I can create a whole task dependency, but this is not fast enough.
Andrew Graham
March 27, 2019 02:13:26
edit: a part of the solution may be with partition by expression -
set partition expression to
@pdg_index
Set filter work items to @pdg_frame >= 1001
but this really doesn't help with downstream sims.
Andrew Graham
March 27, 2019 02:19:20
oh but what still sucks is items down stream can't use batch mode. they still attempt to use the full original range if batch mode is on. is there a solution for that?
tpetrick
March 27, 2019 11:33:40
You can use an Attribute Create to set the frame range attribute on the work items, before the node that creates the batches. When operating in batch mode, the ROP Fetch nodes use the incoming work item's frame and frame range to figure out how big the batch should be.
This is maybe something that should be configurable on the node - we'll look into that on our end.
Andrew Graham
March 27, 2019 18:24:19
I couldn't see the @frame_range attribute in the docs. is there a way to query all available arttributes? is it an int vector 2?
Andrew Graham
March 28, 2019 02:17:03
ok the attribute is ‘range’ and is a float 3 I think. seems to work, but I couldn't see it in the docs.
chipping away at this problem. the next part is, for running preroll, you may want to see interactive cooking playback in the tops context from 950 onwards, but you dont need to write the data out to disk until say frame 1000. we can potentially use a python node to force a cook of a dopnet and write out empty frames until frame 1000, but this has been temperamental last I tried it. Is there a better way to do it with tops?