Fully procedural. Done with ~14KB of XML and ISL
All the objects are created with the parametric surface geometry type.
The indigo scatter tool was used to place the objects over the surface.
Caustics are cast from a parametric water surface with procedural waves.
I didn't have time to make it fully realistic, which takes so much work


