Different result with recook <-> rebuild

   2140   2   0
User Avatar
Member
29 posts
Joined: Sept. 2017
Offline
Hi,

i get different results when i recook/rebuild:

Recook:



Rebuild:



If i change parameters i have to recook and after that do a rebuild to get correct results. What can cause this behaviour?

Attachments:
Houdini - Rebuild-Recook 01.png (1.1 MB)
Houdini - Rebuild-Recook 02.png (1.1 MB)

User Avatar
Member
29 posts
Joined: Sept. 2017
Offline
The results are correct as long as i don't change parameters. Parameters are obeyed when cooking, but reset when rebuilding.

Tooltips say:

“Reload the asset in Houdini and cook it. Current parameter values and input objects will be re-applied. Material overrides will be removed.”

“Force recook of the asset in Houdini with the current parameter values and specified input data. Updates asset if changed in Houdini.”

In both cases it says that CURRENT parameter values are applied. What are current parameter values? The one i set in UI/via code?
User Avatar
Member
571 posts
Joined: May 2017
Offline
The current parameters are the ones you currently have set on the HDA in Unity. The plugin saves out a preset of all parameters and inputs before a Rebuild. Then the preset is applied during the rebuild after the HDA is initially loaded and cooked.

Use Rebuild if you change parameters and HDA network. To be honest, I would always suggest using Rebuild if you actually saved the HDA in Houdini after a change.

Rebuild does the following:
-Save parameter values and inputs as presets.
-Clears out all existing state and destroys all generated objects.
-Deletes the HDA instance in Houdini, then reloads it.
-Cooks the HDA, then generates the output. (first cook). It will have default parameter values.
-Applies the saved preset (parameter values and inputs, if found and valid).
-Does a Recook (second cook). This basically cooks with your saved parameter and input values.
-Clears the preset.

Use Recook for normal parameter and input changes. This checks changed parameter and input values, and only uploads those that changed. Note that if a new session of Houdini, and HDA does not exist, actually does a Rebuild instead.

Otherwise Recook does the following:
-Uploads changed parameters and inputs (so incidentally current values are kept).
-Cooks HDA and generates output.

There is also Reset Parameters which is basically the nuclear option. This does same as Rebuild but without the parameter preset step.

tl;dr: Use Rebuild if you changed the HDA. Otherwise Recook.
Edited by seelan - July 18, 2019 22:50:16
  • Quick Links