Björn Henriksson


About Me




Houdini Skills


Not Specified

Recent Forum Posts

Simple but not stupid scattering? March 19, 2022, 4:30 a.m.

As you saw from the first post, I am hoping for a genre “0” ? so I can lazily jump to other issues.
If I understand you correctly, you'd like ready nodes/functions to use- This is where one would need to understand your exact constraints to even begin tackling it. Just filling a single polygon with squares is a difficult problem. Would you instead say that you can accept working on a grid then the same challenge become trivial- just move the grid over the polygon and delete what's outside. But then again, say you also need it to work for multiple polygons in 3d and the distribution needs to be continuous across edges and the grid solution becomes very difficult.

Fundamentally it's about how packing problems is ambiguous and lack good universal methods. UV packing is the best there is.

Simple but not stupid scattering? March 18, 2022, 3:01 p.m.

These problems often branches of into very specific solutions depending on your requirements. Is it for 3d, do you have angle axis oriented boxed, do you have soft constraints like "prefered" solutions in cases when there's more than one solution?

Even breaking down to atomic nodes are difficult as Houdini isn't a great fit for custom data types like "box".

Without good information about your particular case, my guess
  1. For a perfect solution with perfect control it's best to just wrangle the whole thing. Implement custom box overlap functions and calculate good positions until you've filled the space.
  2. 3d For a more expensive, simpler but also a lot more readable setup I would loop-feedback it with intersection checks.
  3. 2d, guessing this is what Entagma does, use the uv layout to place squares on the mesh that you then replaces with boxes.

Extracting cutters from RBD MaterialFracture Aug. 26, 2021, 4:09 p.m.

I'd like to apply the same cutting operation this does on Mesh A onto Mesh B but can't extract the cutting planes or refer to them. They're tangled up into feedback loops and compiled blocks. Do someone have any tricks on how to get them out intact without affecting the rest?