it k ρ β delay fps T
GPU based Snowflakes simulation on 512×512 grid.
See also Snowfall, Frost patterns and Snowflakes simulations on 1024×1024 grid.
Fast 2D Snowflake with simplified diffusion. Simulations on 1024×1024 grid and 2048×2048 grid.

Is it possible to simulate beautiful Gravner-Griffeath 3D Snowflakes in WebGL 2 ?

Snowflake simulator. Outline

Ice, boundary and "vapor" sites are considered on hexagonal lattice to make snowflake. Boundary (quasi-liquid) and diffusive (vapor) masses evolve by discrete dynamics.
Step 1. Vapor Diffusion.
Diffusive mass d evolves by diffusion with uniform weight on the center site and each of its neighbors. Diffusion does not take place in the ice region. Initial diffusive density is ρ.
2. Boundary Freezing
Proportion 1 - k of the diffusive mass at each boundary site becomes boundary mass. That is, for boundary sites
    b' = b° + (1-k)d°     d' = kd°.
3. Snowflake Attachment
A boundary site with 1 or 2 ice neighbors needs boundary mass at least 1 to join the crystal. Site with 3 neighbors needs β boundary mass and site with more then 3 neighbors joins the crystal automatically.
We can use more simple rule: a boundary site needs boundary mass at least 1 to join the crystal.
4. Snowflake Melting
It is not difficult to add boundary masses evaporation.

Snowflakes gallery


Images are made on 2048×2048 grid.
Simulations on GPU
updated 5 July 2016