Saving ROP geometry at end of simulation

   2798   4   1
User Avatar
Member
59 posts
Joined: Oct. 2010
Offline
Hi TOPpers,

I have a basic-ish question:

I am trying to make a library of snowflakes using Entagma's tutorial.
The setup uses a SOP Solver to ‘grow’ the shape and outputs poly geometry.

I want to save out the GEO as BGEOs at the end of a 100 frame sim,
but I want to do this a number of times with random values in the sim's various parameters.

I have worked out the wedging part of the TOP network, but I really don't want to save the
GEO for every frame, just the end frame.
So, is there a way to save out the GEO at frame 100 ONLY.

Could it be something to do with those ‘partition’ nodes?
I can't make much sense out of them and they all look like they do the same thing.

Usually just writing a post on this forum will get things straight in my brain,
but that has not happened yet, so I'm hitting the ‘post’ button.

Thanks for your help!

Dan
User Avatar
Staff
586 posts
Joined: May 2014
Offline
A partition node takes a number of input work items and puts them into PDG's equivalent of groups - a partition. The different partitioners in TOPs are for grouping work items by attribute, frame, work item index, etc. A partition is effectively just some subset of the input work items with a common property. For example, if you ran three sims and then wanted to merge the corresponding output files for each frame, you could wire your three sims into a partition by frame. Each partition would have three work items in it with the same frame value, which could then be wired into another ROP Geometry or Geometry Import to merge the output geometry.

I assume you're using a ROP Geometry Output node to cook your simulation. If that's the case, TOPs is effectively just cooking a Geometry ROP for your frame range. It's the ROP that's writing out the geometry for each frames and reporting the output back to PDG. If you want to render just the last frame, you can set your ROP Geometry Output to “Single Frame” and set the Override Frame to the last frame of the sim. The ROP Geometry will still cook the whole sim, but there'll only be a work item/output for the final frame. Alternatively, you can also cook the whole sim as a frame range normally and then used a Filter by Expression to get the last work item. I've attached an example that demonstrates both of those.

There isn't currently a way to get a work item for each frame, but only have the last work item write out geometry. It might be possible to build a ROP network that does that and use a plain ROP Fetch TOP node.
Edited by tpetrick - Dec. 9, 2019 12:04:02

Attachments:
solver_example.hip (135.8 KB)

User Avatar
Member
59 posts
Joined: Oct. 2010
Offline
Hi tpetrick,

Thanks so much for your explanation. I will try your ‘single frame’ on the ROP GEO Output node suggestion.

Thank you!
User Avatar
Member
59 posts
Joined: Oct. 2010
Offline
dansidi
Hi tpetrick,

Thanks so much for your explanation. I will try your ‘single frame’ on the ROP GEO Output node suggestion.

Thank you!


WORKS PERFECTLY!!!

Thanks again!
User Avatar
Staff
586 posts
Joined: May 2014
Offline
No problem, glad to hear it worked for you!
  • Quick Links