Here is finally something usable. I wrote another Houdini plug-in. As always, this pug-in does very simple thing – just connect two input with poly lines. You can limit the maximum number of lines and set the number of control points on the lines. You can also inherit numeric type(int, float, vector) point attribute from the source points.
I first tried to use GU_PrimNURBCurve because I wanted to make smooth line but ended up using GU_PrimPoly. I was little lazy to deal with the extra attributes like basis and extra points at the end of curves, and I also realized I could just use the Convert Sop if I really want a smooth curve.
HDK change in Houdini 12 is pretty significant, and it took me for a while to catch up. I wrote a code in 11 and had to re-write pretty many parts in 12.
The plug-in only connects two point inputs. Everything else was done in regular Houdini. Distance check was done using Attribute Transfer. Small movement on the surface was done using turbulence noise and Ray Sop. Branching is just another Scatter Sop on the new lines and surface.
I’m not sure (and don’t care) my version of point based color bleeding is physically accurate, but it looks good enough to me. I’m searching points in a search radius and adding the color attributes based on normalized distance.
I actually found Add Sop could do what my new plug-in does. Add sop might not have the point attributes inheriting feature, but I’m pretty sure I could do that with Foreach and Attribute Create Sop without writing a plug-in. Well, but I think at least my plug-in should be faster.