There are two methods one with scenes included which is the following:
This one has sample scenes
His website seems to be offline so I took the liberty of recapturing everything from wayback machine and reposting it here
(Perry please write me if you want the content to be taken down when your site is back online):
To be honest I couldn’t really follow the tutorial but the images where clear enough to make a start.
The first test was created with a similar setup as the one in the tutorial above, but instead of using math nodes its just using a ik-handle that directly drives the rotation of the affected joints. On this joint the limitTransformations are set in such a way that it only rotates in Z and cannot rotate less then 0 degrees. Thus making a fake collision based on rotations:
Expanding on this, what if we want to have more segments to the skirt or even a way to use collision when we have the knee in place? for the next section instead of using a nearestPointOnCurve node, the detection circle is expanded to a full nurbsSurface and the ClosestPointOnSurface node is used to attach the ikhandles to the mesh.
This works better as now the skirt wraps around the knee and fakes a sense of gravity, but one downside of using the nearestPointOnCurve and closestPointOnSurface is that they wrap around the object. So sometimes the detection is on the wrong side of the surface.
The next iteration was based on this tutorial by Riham Toulan. In stead of a closestPointOnsruface the ikhandle is now attached to a keepout node that is placed on the chain itself. As soon as the collision mesh hits this keepout node the ik handle is pushed in the local direction that is given in the inDirection vector attribute. This simple connection gives the exact same output as the previous test, but it has far less nodes, does not need the transformation limits on the joints and is far more stable.
For the people that want to have a better look here is the scene file:
And the base for all the work