4 ms·
A little more than eight years ago, I came across a nice documentary: "Fractals - The Colors of Inifnity", narrated by Arthur C. Clarke (yes, THE Arthur C. Clar
by krylon 10y ago
A little more than eight years ago, I came across a nice documentary: "Fractals - The Colors of Inifnity", narrated by Arthur C. Clarke (yes, THE Arthur C. Clarke!), with music provided by Dave Gilmour of Pink Floyd; to top it off, I was tripping on LSD for the first time when I saw it, and I had to rewind at least once to check if something I had seen was actually on the screen or just in my head (to my disappointment at the time, it was actually on the screen).
It's a nice documentary, though. Highly recommend it. They even have an interview with Benoit Mandelbrot himself, may he rest in peace.
Two years after that, I wrote my first Mandelbrot-renderer. First in Python, but that was waaaay too slow, then in C, which was a lot faster (duh!), and then I made it even faster by telling the compiler to use SSE. (To some, that sounds trivial, but it was something I had never done before.)
I have always suspected that it is like a rite of passage, building at least one simple-minded Mandelbrot renderer. I rewrote mine after two more years to take advantage of multiple threads and wrote another one to render the Buddhabrot[1]. Then I remembered an article I had read years before, about the Parallel Virtual Machine, PVM. So, the next weekend, I turned my Mandelbrot renderer into a distributed application.
So Kudos to the author. Tackling the Mandelbrot set has the dual advantage of being interesting and you can make pretty pictures along the way. It is great fun, and I learned a few things along the way. What more could I ask for?
[1] https://en.wikipedia.org/wiki/Buddhabrot https://en.wikipedia.org/wiki/Buddhabrot
- blt 10y agonext step: CUDA :)
- krylon 10y agoI have not owned an nVidia card in years. However, I am about to buy a new PC, and I got a used GeForce GTX 960 for cheap from a coworker, so I have the option at least. ;-)
- Dylan16807 10y agoA shader's probably one of the easiest ways to do it, since the framework's already there to run on each pixel.
- psyc 10y agoI wrote my first Mandelbrot renderer around 1990. I've been a graphics programmer for almost 30 years, and it still absolutely blows my mind. I understand the math, but I still watch ultra-mega-zooms on YouTube and marvel that such an object exists.
- Baeocystin 10y agoMy high school science fair project in 1989 was the Mandelbrot set, and I was using my Amiga to generate them, then some funky dot-matrix printer voodoo to get even grayscaling for the prints. I barely made the cutoff time, even though I'd spent weeks working on the project, because each possible render took at least a day, and my code had a lot of hiccups. (IIRC, everything was written in Modula-2. I need to see if I can find those old disks somewhere.) It's funny that of all the things I'm 'jealous' of in modern tech, the thing that still blows me away is just how fast I can generate/zoom around fractal sets, just for the hell of it, on my phone. This much computing power in the palm of one's hand was inconceivable to me at the time!
- kirrent 10y agoOne of my most enjoyable projects was writing a Mandelbrot generator for the Gameboy. It was so slow that if you wanted to fill the very low res screen you'd be the better part through your battery life. Great fun though.
- lanebrain 10y agoSimilar - this and Julia and then the color cycles. Lots of hours as well with Fractint back in the day
- deleted 10y ago[deleted]
- ihaveajob 10y agoThanks for the tip about that documentary. You can watch it on https://www.youtube.com/watch?v=Lk6QU94xAb8 https://www.youtube.com/watch?v=Lk6QU94xAb8
- ErikBjare 10y ago> I have always suspected that it is like a rite of passage, building at least one simple-minded Mandelbrot renderer. At the university where I study and work as a TA, all CS students have to write a Mandelbrot generator (we provide a simple GUI for them) in the second programming course. Everyone is always very happy with the results and many consider it one of the coolest things they've done with programming up until then. I think assignments like those make them more enthusiastic about programming, which we (imo) need more of.
- sllabres 10y agoThere is a excellent animation of the Buddabrot from Benedikt Bitterli at [1] and a description what he has done to produce it at [2]. [1] https://www.youtube.com/watch?v=zxIcydL7wwY https://www.youtube.com/watch?v=zxIcydL7wwY [2] https://benedikt-bitterli.me/buddhabrot/index.html https://benedikt-bitterli.me/buddhabrot/index.html
- david-given 10y agoFor me it was a Mandelbrot renderer typed in from a computer magazine, in BBC Basic, on a 2MHz ARM with five-byte floating point. It'd do a 256x256 four-colour render overnight. These days? $ sudo apt install xaos $ xaos Click in the window, hold the mouse button down, watch.