{"id":1116,"date":"2026-04-27T14:55:00","date_gmt":"2026-04-27T21:55:00","guid":{"rendered":"http:\/\/fx-td.com\/houdiniandchill\/?p=1116"},"modified":"2026-04-27T14:59:25","modified_gmt":"2026-04-27T21:59:25","slug":"archived-post-by-jim-meston-7","status":"publish","type":"post","link":"http:\/\/fx-td.com\/houdiniandchill\/2026\/04\/27\/archived-post-by-jim-meston-7\/","title":{"rendered":"Archived post by jim.meston"},"content":{"rendered":"<div class=\"postie-post\">\n<p class=\"\">Vellum hair constraint setup is very antisocial so if you plug things in line with it, there&#8217;s a good chance it doesn&#8217;t do what you expect, either silently or otherwise.  Run constraint construction in parallels and then fuse judiciously. In this case there is no branching so it is simple.<br \/>\nThis way you can drastically improve compression and stretching and also if you get fancy you can make hybrid torque, stiffness constraints. This is what I do for my Vellum Branch Constraint sop which allows you do setup foliage rigs without collapse or bouncy sim settling.<br \/>\nHere I am getting results with 2 substeps.<\/p>\n<p class=\"\">Increasing the neighbour distance increase stretch\/compression resistance.  Same for if set this up with bendtwist hybrid struts.<\/p>\n<p class=\"\">[edit] Might as well add this here also.  We can use decreasing density along the curve to increase stiffness as the per point variable mass changes resistance to acceleration. This appears as increased stiffness. It works but rather than linear density decay, it should likely be pow(width,2) or something with some care not to have infinite or zero values.<br \/>\nBut we can also set up extra fancy bendwist stiffness struts like this. (+ Bad habit setting stiffness to max as it can&#8217;t resolve but that&#8217;s another subject).<\/p>\n<p class=\"\">This works very well for situations without high accelerations and high impact collisions, but can cause artifacts. This can be addressed with carefull stiffness \/ substeps balance. Or you can bodge the rig with a delta mush which almost always works.<\/p>\n<p class=\"\">Probably a lot more rough and ready than that fancy paper.<\/p>\n<p class=\"\">For copy paste ease. Note the inputs.<br \/>\n&#8220;`js #include &#8220;pbd_constraints.h&#8221;<br \/>\n<a href=\"mailto:s@type\">s@type<\/a> = &#8216;bendtwist&#8217;;<br \/>\nint pts[] = primpoints(0, @primnum); <a href=\"mailto:p@restvector\">p@restvector<\/a> = computeBendTwistRestVector(1, pts[0], pts[1]);<br \/>\n@stiffness = 1e12;  @dampingratio = 0.001; &#8220;`<\/p>\n<p>Attachments in this post: <br \/><a href=\"http:\/\/fx-td.com\/houdiniandchill\/wp-content\/uploads\/discord\/20265404\/27\/26\/image.png\">http:\/\/fx-td.com\/houdiniandchill\/wp-content\/uploads\/discord\/20265404\/27\/26\/image.png<\/a><\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Vellum hair constraint setup is very antisocial so if you plug things in line with it, there&#8217;s a good chance it doesn&#8217;t do what you expect, either silently or otherwise. Run constraint construction in parallels and then fuse judiciously. In this case there is no branching so it is simple. This way you can drastically &hellip; <a href=\"http:\/\/fx-td.com\/houdiniandchill\/2026\/04\/27\/archived-post-by-jim-meston-7\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Archived post by jim.meston<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[2],"tags":[],"_links":{"self":[{"href":"http:\/\/fx-td.com\/houdiniandchill\/wp-json\/wp\/v2\/posts\/1116"}],"collection":[{"href":"http:\/\/fx-td.com\/houdiniandchill\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/fx-td.com\/houdiniandchill\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/fx-td.com\/houdiniandchill\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/fx-td.com\/houdiniandchill\/wp-json\/wp\/v2\/comments?post=1116"}],"version-history":[{"count":0,"href":"http:\/\/fx-td.com\/houdiniandchill\/wp-json\/wp\/v2\/posts\/1116\/revisions"}],"wp:attachment":[{"href":"http:\/\/fx-td.com\/houdiniandchill\/wp-json\/wp\/v2\/media?parent=1116"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/fx-td.com\/houdiniandchill\/wp-json\/wp\/v2\/categories?post=1116"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/fx-td.com\/houdiniandchill\/wp-json\/wp\/v2\/tags?post=1116"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}