The usual drill. Capsules stacked with Kangaroo 2, image rendered with Cycles. Had to manually delete a bunch of capsules that had their end-points on opposite sides of the glass. To make @nathanletwory happy, the capsules are all block instances, baked into Rhino using a small C# script component.
Beginner guide? populate objects with some parameters
i HATE capsules… but other than that beautiful job
if you change the initial object from those instances does the geometry realign automatically, or would the simulation have to be reinitiated?
The nice thing about capsules is that they can be simulated using the Kangaroo line/sphere collision constraint. I have never tried to get custom shapes to collide. Presumably it is possible, just way slower.