Run the generator here.
This generator cycles a snowflake from a seed to its final state, and also loops its crystal distribution kaleidoscopically on two axis.
It takes the user input and distributes hexagons on a pinion accordingly, applies mirroring and sixfold symmetry, generates a height map, and adds lighting and refraction. This is done with a fragment shader; the snowflake lies on a plane and there is no geometry created.
Thanks to Evan Wallace for the post-processing effects (blur and chromatic aberration).