I needed to fill up an area with large piles of garbage for the project I am currently working on.
My first impulse was to model a couple of different bags and start piling them up into larger piles.
It wasn’t before long that the triangle count shot up exponentially and the drawcalls went through the roof even with batching enabled. I had to find a way to make them all one shape and eliminate any excess geometry that wasn’t needed.
I decided to try and use Mayas nCloth functionality to generate a low-poly mesh for the piles.
This technique should work for any organic form where you have a pileup of multiple shapes.
In this case its garbage piles but it could be a rock slide etc.
First I created the pile out of the individual meshes adding variation through differences in hue, scale and rotation. I even enabled soft selection and helped some areas conform to the shape I had in mind.
Then I created a fairly dense plane and positioned it above the area.
I converted the pile to a collider and the plane into a cloth object then ran the simulation until the cloth had covered the pile. From there I retopologized and reduced the cloth, then transferred the normal information from the high poly pile. In the end I transferred the diffuse information to a new texture and applied that to the low poly pile.
A problem I encountered when simulating the cloth was that the points that made contact first would stretch and slide across the object. You need a cloth preset that is flexible enough to deform and slide into the creases but not stretchy enough that it loses its shape again.
I ended up starting with the burlap preset and then tweaking its Friction to 1000, Stickiness to 10000 and the stretch resistance to 0.01.
That way the points that have made contact will stay fixed while anywhere that there still is a gap, the mesh will stretch to fill them out.
Bellow you can find a timelapse of the stages of the process.