Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

It doesn't seem like you can zoom very far (on Android, at least), which to me undermines quite a lot of the wonder of fractals.


This is sadly true and I whole-heartedly agree with you...

It's because I didn't find a way to construct only parts of the fractals based on the viewport. Many of the fractals you can see in the garden are generated iteration by iteration and generating the next iteration for only the visible part is not a trivial problem to solve... I struggled thinking about a solution for this, but in the end gave up in favor of having more fractals.

For the Mandelbrot Set the above is not the case, but the zoom there is still very limited due to precision issues in WebGl (a float has only limited bits, even for high precision floats) and things get horribly slow if trying to implement arbitrary precision on the GPU.

There are some ideas around "perturbation theory" that can help to get more zoom on the Mandelbrot Set (still not infinite) but I had a very hard time wrapping my head around how to implement that in a shader.

But please, if you have ideas of how to fix this - the project is open source and it would be 100% awesome if it were possible to nicely zoom in/out of all of them.

I opened an issue on the repo: https://github.com/trebeljahr/fractal-garden/issues/22


Back in the 1990's when fractals were a big thing and computers were not very powerful, the go-to tool for exploring fractals was a highly optimized integer engine called `fractint`.

In the final form it supported many types of fractals via a domain-specific language. You can still download the source from https://www.fractint.org/.

Porting this framework to your garden might be worthwhile?


You can allow more zooming on the Mandelbrot Set by increasing maxIterations.

(Note that the colours will change because of the way the code is written. Also, it will require more computation, so it's probably a good idea to only increase maxIterations when zoomed in.)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: