Drawing fractals in the browser with L-systems and ES6
eng.qualia.com
eng.qualia.com
It took me many a day at the local hacker space dedicated to building the software, but as it is so intriguing, I got a lot of comments and interest from other hackers as well. There's just something awesome about simulating life-like structures on a computer.
Can L-systems support random variations? The code in the example produces the same fractal each time as the L-system is deterministic.
A deterministic system is nice, however, because you can make changes to the production rules and rendering without having to worry about as many possible outcomes (introducing stochastic production rules increases the number of possible outputs combinatorically). This is not too much of a problem if you're just making cool fractals for fun, but if you're doing procedural generation with L-systems then you have to keep an eye out for degenerate cases. For example, if you're generating foliage this way, you might get plants that grow into the ground or in weird non-biological patterns.