Houdini custom procedural not rendering.

   506   4   1
User Avatar
Member
16 posts
Joined: Oct. 2021
Offline
Hey everybody moving this question to the forum, I'm trying to create a custom procedural but for some reason the procedural doesn't render (it shows in the viewport with preview procedural)

I re-did the file in houdini 21.0.440
Running on Windows 10 - 19045.3803
Ryzen 9 9950x
RTX 5090 - 581.29 Studio driver





Image Not Found

Image Not Found

Attachments:
sop_net.png (1.0 MB)
solaris_.png (1.0 MB)
rendered.png (715.2 KB)
render_log.txt (58.4 KB)
log_config.png (19.8 KB)
procedural_file.hiplc (1009.9 KB)

User Avatar
Staff
583 posts
Joined: June 2020
Offline
Thanks for sharing all that data. Ultimately I believe the issue is that there are ch()VEX calls being made, but at render-time the SOP nodes don't exist, so those calls all fail.

You can reproduce this issue locally by saving your graph to disk, renaming the network that contains it (e.g., /obj/geo1-> /obj/RENAMED_GEO1) and then try the Preview Procedurals LOP.
User Avatar
Member
16 posts
Joined: Oct. 2021
Offline
robp_sidefx
Thanks for sharing all that data. Ultimately I believe the issue is that there are ch()VEX calls being made, but at render-time the SOP nodes don't exist, so those calls all fail.

You can reproduce this issue locally by saving your graph to disk, renaming the network that contains it (e.g., /obj/geo1-> /obj/RENAMED_GEO1) and then try the Preview Procedurals LOP.
Hmmm I see, so what should I do for it to work? or some nodes will not work?
User Avatar
Staff
583 posts
Joined: June 2020
Offline
> Hmmm I see, so what should I do for it to work? or some nodes will not work?

Ultimately you need to break down the HDAs you use, and check them for Wrangles that make ch() calls.

In your particular example, it's enough to:
- allow editing of the "pointdeform1" node
- go inside and find the "capture" node
- edit the script around line 179 as follows:
float radius = 0.01;  // ch("radius");
int maxpt = 100; // chi("maxpt");
int minpt = 1; // chi("minpt");
User Avatar
Member
16 posts
Joined: Oct. 2021
Offline
robp_sidefx
> Hmmm I see, so what should I do for it to work? or some nodes will not work?

Ultimately you need to break down the HDAs you use, and check them for Wrangles that make ch() calls.

In your particular example, it's enough to:
- allow editing of the "pointdeform1" node
- go inside and find the "capture" node
- edit the script around line 179 as follows:
float radius = 0.01;  // ch("radius");
int maxpt = 100; // chi("maxpt");
int minpt = 1; // chi("minpt");
ahhh got it, awesome, thanks Rob! have a good one
  • Quick Links