Archived post by SniperJake945

its vvvv simple, i learned about it in some random twitter thread. basically in a solver at each time step you want to:
“` Use an Add sop with delete geom but keep points, turned on “`
“` //point wrangle A //find two near points to any given point, and project onto the edge that spans those points //projecting fully causes instability so maybe just blend between ur current point position and the projected position //also connect the current point to it’s two nearpoints with polylines “`
“` //point wrangle b //relax that shit //if our current point is too close to either of it’s two neighbors, push away from those neighbors //also blend again to the relax position to prevent crazy instability “`

and if u dont want to implement it urself, here’s my file

the basic version of it looks like farm plots to me, which is really cool

Attachments in this post:
http://fx-td.com/houdiniandchill/wp-content/uploads/discord/20194912/23/19/stupid_annealing_JR.hip
http://fx-td.com/houdiniandchill/wp-content/uploads/discord/20194912/23/19/unknown.png

Archived post by Malmer

Made a little thing that does bevels to your bools. Perhaps something that could come in handy? mattias.malmer.nu/wp-content/uploads/2019/12/boolbevel_v02-2.zip It is nice if you need to do big bevels on fairly dense meshes. it is experimental but kindof fun. Let me know if you guys find it at all useful.

Attachments in this post:
http://fx-td.com/houdiniandchill/wp-content/uploads/discord/20193912/15/19/boolbevel.PNG

Archived post by flight404

i mightve found a sidefx forum with the answer. just took phrasing the search query just right

www.sidefx.com/forum/topic/50591/

good ol Slancik to the rescue: “`string rampname = “ramp”; int npt = chi(rampname); float ramppositions[]; for (int pt=1; pt<=npt;pt++) { float ramppos = chf(rampname + itoa(pt) + "pos" ); append(ramppositions, ramppos); } f[]@ramppositions = ramppositions;```

Archived post by JeffLMnT

“` How to deal with Iterations: Substeps – More expensive, but gives a better solve – especially for higher stiffness values Constraint Iterations – Increase for higher stiffness value to control excessive deformations – great for cheaper solver at high resolutions Smoothing Iterations –  smoothing ops, to smooth out errors of excessive deformations, or constraint errors Collision Iterations – Uses the Detangle sop – lower frequency iterations – complicated and time consuming – increase when collisions are fighting against constraints or other collisions However, its probably better to increase substeps and decrease constraint iterations for a more accurate solve – and to reduce load on the constraints – but is more expensive “`

Archived post by Bender

From @trzanko ray sop or prim uv’s don’t yield super great accuracy, as it only interpolates among a primitive’s points, to get a smooth position you can leverage the osd vex functions
here’s my subdiv ray snippet which illustrates this, you can see the diff between the osd pos and the primuv pos if you comment out the line which declares the variable sDP
“`int primNum; vector UV;
float dist = xyzdist( 1, @P, primNum, UV);
vector restN = primuv(1,”N”,primNum,UV); vector posOnRest = primuv(1,”P”,primNum,UV);
//subdiv float pU, pV; int pId; int patch = osd_lookuppatch( 1, primNum, UV.x, UV.y, pId, pU, pV);
//these two functions return the last argument //so posOnRest is being overwritten in the function, much like xyzdist() int sDN = osd_limitsurface( 1, ‘N’, pId, pU, pV, restN); int sDP = osd_limitsurface( 1, ‘P’, pId, pU, pV, posOnRest);
@P = posOnRest;“`

posting Tighe’s post for re-gemming