I have this PDG network that I use to learn and it can cook for quite a bit. Now I want to add more nodes to add it, but I have not changed the upstream stuff. Whenever I open the Houdini scene, I seem to have to recook stuff even though files are baked on my hard-disk and nothing has changes since.
What tools/processes are available to me, so I don't have to recook everything every time?
(I am probably missing something basic, here.)
Is there a way to pick up a cooked result of PDG?
3188 7 0- DASD
- Member
- 453 posts
- Joined: Feb. 2013
- Offline
- BrookeA
- Staff
- 387 posts
- Joined: Aug. 2017
- Offline
- DASD
- Member
- 453 posts
- Joined: Feb. 2013
- Offline
- kenxu
- Member
- 544 posts
- Joined: Sept. 2012
- Offline
Many of the nodes such as ROPFetch has a feature to look at the file it expects to find on disk - and if it does, it will automatically mark the workitem as cooked. We are doing a sweep to make sure this feature is available on as many nodes as possible. So hopefully, PDG will just pick up from where you left off, without you ever needing to do anything, even saving the task graph. This feature would only work if you stick to the @syntax in your output files, because PDG needs to figure out the expected output file, and it can only do that with the @syntax - so please do stick with that as much as possible.
- Ken Xu
- bjorn.henriksson
- Member
- 3 posts
- Joined: Feb. 2018
- Offline
I was confused by the same thing for a time, thinking I had to keep my session open to maintain the cooking states, probably simply because most of Houdini works this way. Having the “Task Graph File” at the front of the TOP parameter really helps but the mechanism and its data is hidden for the user and I can't see how people would read what's happening. Maybe if there was a “dirty condition” visible on the task info with relevant data, like timestamp, it could be self taught?
- kenxu
- Member
- 544 posts
- Joined: Sept. 2012
- Offline
- DASD
- Member
- 453 posts
- Joined: Feb. 2013
- Offline
- kenxu
- Member
- 544 posts
- Joined: Sept. 2012
- Offline
So let's say you have an output string parameter, and some attribute like fooAttr you can put in something like:
path_to_my_file/my_file_`@fooAttr`_rest_of_filename.bgeo
With that expression, PDG can predict what the file on disk should be, and if it finds the file there, then the instant cooking will work. By contrast, if you exported fooAttr to an environment variable $FOOATTR, then this will work when outputting the files, but NOT work for the instant cook feature:
path_to_my_file/my_file_$FOOATTR_rest_of_filename.bgeo
path_to_my_file/my_file_`@fooAttr`_rest_of_filename.bgeo
With that expression, PDG can predict what the file on disk should be, and if it finds the file there, then the instant cooking will work. By contrast, if you exported fooAttr to an environment variable $FOOATTR, then this will work when outputting the files, but NOT work for the instant cook feature:
path_to_my_file/my_file_$FOOATTR_rest_of_filename.bgeo
- Ken Xu
-
- Quick Links