David Makin was one of the winners in the Mandelbrot Art contest in 2006, 2007 and 2009. He was on the judging panel for the 2010/2011 contest. Today we get the rare opportunity to pull back the curtains a bit and discover what it was like to be a mover and shaker in the early days when fractals were as alien to most people as nanotechnology is today.
Another thing David did was to render the first deep zooms of the “true 3D Mandy” in 2009, proving it to be a fractal at higher iterations, although he claims the lighting algorithm on the renders was awful !!
He is also responsible for creating the following formulas used in Mandelbulb 3D:
- Makin4D p2a
- Makin4D p2b
- Makin4D p4a
- Makin4D p4b
- Makin4D p8a
- Makin4D p8b
It is with great pleasure that I introduce you to Mr. David Makin!
MM: We would like to start by asking the basics. Where you are from? What is your educational background? What is your marital status and what type of work do you do for a living?
David Makin: My name is David Makin and I’m originally from Ashton-in-Makerfield near Wigan, which was in Lancashire back then (1962) but is now in Greater Manchester. We moved to Colwyn Bay on the North Wales coast in 1987 and then round the corner to Rhos-on-Sea in Colwyn Bay (where we are now) about 20 years ago. By “we” I mean myself and my parents, though my mother passed last year. So now it’s just myself and my dad – I’m his registered “carer”, he’s 79 and I’m 55. I have a younger brother Stephen, who’s in his second marriage and has 3 children from the first and one from the second. So I have 2 nephews and 2 nieces but so far I haven’t found a woman who’ll have me !!
As for education I went to old-style Ashton Grammar School and then Winstanley College and my highest academic qualifications are 5 A levels (BBCDE in math chemistry, physics, further math and general studies). Basically because I messed up my further education at Uni by starting a Chemistry degree but not finishing it due to discovering computers and programming on a subsidiary course at which point I went through a manual on BASIC in 45 minutes and realized that’s what I ought to be doing.
Unfortunately this was around 1982 (just after Sinclair) and not being an AAA A level student I couldn’t get on a computer science degree due to their popularity so I ended up having to settle for an HND course in Maths, Stats and Computing at Manchester Polytechnic. While on the course at home I borrowed a Commodore Pet to program on and realized very quickly that I’d need to learn machine code to do what I had envisaged when first encountering computers/programming (because I wrote a duck-shoot game on the Pet in interpreted basic and it ran like a strategy game).
On the course as well as the history of computing and the hardware stuff we were learning Algol (effectively structured basic) and a language that I even then felt should be assigned to the bin – COBOL. At home I then bought a Dragon32 (think Tandy CoCo in the US) and started learning 6809 assembler.
Soon, because I was progressing faster at home I dropped the HND course and later released some software for the Dragon through John Penn Software over the next couple of years. From then until moving in 1987 I had various computers including an MSX, a C64, a C128 and a Sinclair QL but I never got on with them in programming terms. Then came 16-bit with the Atari and the Amiga and I was really getting into programming on my Atari MegaST when we moved to Wales. Once we’d moved I rang up what I thought was a game suppliers to buy some software but the company I rang (Mr. Chip software) said they made games but didn’t sell them, so I said have you got room for another programmer and ended up being vetted by sout (Shaun Southern) writer of Trailblazer and Kick-Start on the C64. It just so happened that I’d recently figured out the insane memory to pixel mapping on the ST and Shaun was trying to do the same so he told Doug (the boss) to sign me up.
The first game I wrote was Super Scramble Simulator for ST and Amiga – created by “Magnetic Fields” (the 16-bit name for Mr. Chip) – while Shaun did Lotus 1. I also worked on “Wrangler”, “Supercars” (ST) and did all the coding for Crystal Dragon (Dungeon Master style game on the Amiga). Release of Crystal Dragon was 1995 and unfortunately I’d overworked on it whilst also having too much special tobacco 😉 I ended up having a “psychotic episode” in the form of schizophrenia and was basically out of it for 2 years and told I’d always need to take risperidone – which I weaned myself off by 1998.
Getting back to computing in 1999 I discovered “Fractint” for the first time and never looked back with respect to fractals. But I still wanted a career in computer games to which end I joined Parys Technografx, formed by Stephen Parys formerly of Magnetic Fields and worked with them on “Tower of Souls” then doing work for Weight Watchers before moving on to the Parys Tech. Games for mobile devices.
At the start of this period I wrote MMFrac but stopped development after about a year in 2000 when I discovered Ultra Fractal (2) which basically already did everything I’d thought of at the time – nice one Frederik !!
I still occasionally added more code to MMFrac mainly for testing anything new, e.g. rendering 3D IFS, and the source is now a bit of a mess so for the last 10 years or so I’ve stuck to using UF instead, even for 3D. I always want to write code first and develop images later, that way my comprehension of what’s going on is much better, especially when I end up using other people’s code as then I really want to have worked out my own version first.
Now and since starting at Magnetic Fields I’ve always been “self-employed” and I used to say “programmer” but now I say “artist/programmer” and I’m trying/hoping to make more from my artwork than from programming – at 55 it’s not as easy to remember 100,000 lines of source code anymore 😀 (and I’m baaaadd at commenting). In addition to the fractal art I now also do digital photography and manipulation.
MM: What would you like to say to people using MB3D and creating fractals today?
David Makin: To newbies: You don’t really need to know the math but you do need to know how to use the software, so learning to do fractals is not really any different from learning to use Photoshop. As with a car a little bit of specialist knowledge helps (how to change a sparkplug<>what bailout is for, where the petrol goes<>what iterations/maxiterations are) but you don’t need to know the inner workings of formulas.
To those just creating art: Keep playing and testing the limits, fractals can produce amazing surprises and literally infinite worlds.
To all: Have fun !! But be ready for membership of fractaholics anonymous 😉
For MB3D/4D users: Don’t forget that 2D can be just as artistic !! And do try other fractal software too.
MM: What might you suggest for them to research?
David Makin: Depends who you mean – for physicists/mathematicians I’d say seriously investigate the idea that existence itself is one or many dynamic strange attractors (immediately explains all spooky effects at distance).
For fractal programmers who haven’t done so already study how the rendering methods work – both old and new, mathematically “correct” or brute-force because there’s always some formula that won’t conform. One of the most important things is how to get smoothed iteration values or distances so learn that if you haven’t already – there are many methods.
As for new research, to me this involves the interface from user to formula more than anything at the moment, this is where even the latest programs fall down a little. It’s possible for instance to combine 3D IFS and normal Mandelbrot/Julia fractals (or any other kind) so for instance you could have a Sierpinski triangle of Mandelbrots – the interface here would need to allow the user to control an IFS tree being able to put whatever fractal function they prefer at any node in the tree, to do this completely for n levels requires entries proportional to exp(n) so this could only work explicitly for smaller depths, but greater depths could be achieved using algorithms to decide the choices at the nodes in the IFS tree – an extension to using cellular automatic control in LRIFS (language restricted IFS).
In addition, it strikes me that it should be possible to combine such PIFS (Programmed IFS) with CSG trees.
MM: What would you want people to know about yourself, your work and contributions to the field of fractals?
David Makin: Apart from being a fractaholic, I also do photography, mostly landscape/nature and I’m now a big fan of the Raspberry Pi – I even process most of my photos on a Pi 3 using The Gimp.
One day a week (usually Saturday) I voluntarily man the Rhyl Create Gallery in the White Rose Centre, Rhyl. Rhyl Create is a group of about 40 artists on the North Wales coast from Prestatyn to Bangor.
With respect to fractal art my work was one of the winners in the Mandelbrot Art contest in 2006, 2007 and 2009 and I was on the judging panel for the 2010/2011 contest.
I believe my biggest contribution to fractal programming was the eureka moment when I was half-asleep contemplating the problem with fractals where standard iteration smoothing won’t work because the divergence varies across the fractal and I suddenly realized that calculating the actual divergence at bailout would maybe fix the problem, which it does (usually). This led to the auto-power mode in fractal coloring.
At one point (for my formulas using recurrence relations such that the recurrence was spread over the iterations rather than using a fixed polynomial on each) I did get an email from a mathematician saying “do you know what you’ve done” and I confess I still don’t !! (if anyone knows why the significance please let me know).
The only other thing is I did render the first deep zooms of the “true 3D Mandy” in 2009, proving it to be fractal at higher iterations, although the lighting algorithm on the renders was awful !!
MM: We know you invented the MMFrac program, but it is unavailable for download these days. Then you went to UltraFractal and wrote some formulas for that program. You also wrote some formulas for MB3D, but we would like to know how that came about.
David Makin: The 3D formulas I wrote for Ultra Fractal were initially done because the only 3D available at the time were very slow (in UF and Fractint) and I first used a method based on the iteration density of the fractal, stepping along the rays faster when the density was low and slower when high. This produced a much faster algorithm but still pretty slow so I was always trying to find better methods and later switched to the true distance estimation methods, including the one that was essentially created by myself and Krzysztof Marczak (Mandelbulber).
As for the different formulas themselves I was always trying to find the true 3D Mandy but Daniel White (and Paul Nylander) beat me to it. It wasn’t me who transferred my UF formulas to M3D, that was one or more of the M3D authors.
MM: We would like to ask what are you doing currently. Could you prepare some interesting information or images about your program, your formulas and your contributions to MB3D?
Note: See resources included in response to this question throughout the remainder.
David Makin: Recently I’ve been concentrating more on photography but I’ve realized that the latest OOP language in UF probably makes some things possible that weren’t previously, including formula authors being able to make other uses of the switch option so 3D objects can be viewed and manipulated in 4 window modes, this requires some work to say zoom one window and leave the other 3 unchanged but I think it’s possible, there’s now also a better way to do IFS I think.
I can prepare some information and images relating to my formulas for sure, but it’ll take longer if you want them rendered in MB3D coz I confess to having hardly used it, I normally stick to UF !
I’m on a Mac and hate booting it to Windoze.
MM: What do you think might add value to the programs being developed today?
David Makin: Print direct from fractal program (2D or 3D).
Have a general buffer that formula authors can read/write anything to and save out in their choice of format.
MM: With MB4D in the development stage, what advice, wisdom would you pass on to the development team?
David Makin: As I said above, remember the importance of the user interface.
MM: Do you have any plans on developing new formulas for MB4D?
David Makin: UF, yes. MB4D if on a Mac version 😉
This was a leaflet to go with a talk on fractals that David Makin did to a group of math and art students.
Introduction to fractals and fractal art
1. “Fractal” is a term coined in 1975 by a mathematician called Benoit Mandelbrot, a Polish born French and American Mathematician.
Fractals are relatively simple mathematical constructs that can produce very complex results when used to create images, usually showing the classic features of fractals – self-similarity at different scales with “infinite” detail at least in places.
Although these constructs (often called formulas) can be relatively simple a very large amount of repetitive calculation is involved in producing an image and computer programs are far better suited to doing this than pen and paper.
However, there are some simple ones that demonstrate the self-similarity of fractals very well. The simplest of these is the Cantor Set first described by Georg Cantor in 1876 and this can be created easily. Draw a straight line at the top of your page. Now draw a copy of it underneath it but with the middle third missing. Now draw a copy of the two shorter lines underneath themselves but with their middle thirds missing.Now repeat several times such that the remaining lines get shorter and shorter as you go down the page.
The result of this process if you were to continue forever is the “limit” Cantor Set, and what you have drawn is a finite approximation of the limit Set.
A more interesting fractal that can be easily produced is the Sierpinski Triangle described by Wadaw Sierpinski in 1915.
Draw a large equilateral triangle, now mark the center point of each side and then join them to make a central triangle and imagine this is removed.
Now repeat the process for the 3 remaining smaller triangles.
And again repeating the process to the infinite limit produces the Sierpinski Triangle and what you can draw is a finite approximation to this.
2. One of Mandelbrot’s tutor’s was a mathematician named Gaston Julia and he investigated an algebraic method that produced fractal objects in the 1920s – without the aid of modern technology. This introduction to “Julia Sets” led Mandelbrot to choose a job at IBM in the 70’s so he could use their computing power to study further.
Julia Sets and the now more famous Mandelbrot Set are fractals created algebraically using complex numbers which are a two-dimensional number form that shares all the characteristics of normal real numbers plus an extra one that means there’s a solution to the problem of obtaining square roots of negative numbers.
Imagine a normal graph such that the horizontal or x-axis is the real number line and the vertical or y axis is another number line – call this the imaginary number line.
Because these are at 90 degrees a change in the real (x) value could occur without the imaginary value being affected and vice-versa.
Now define a multiplication of real 1 by imaginary 1 as imaginary 1 – this means that if we start with +1 up the horizontal axis and multiply by +1 up the vertical axis then the result is +1 up the vertical axis because multiplying by +1 real produces no change in the other value – another way of looking at this is multiplying +1 (real) by +1(imaginary) results in the +1(real) being rotated through 90 degrees to become +1 imaginary.
Now imagine multiplying +1(imaginary) by +1(imaginary) – simply the +1(imaginary) causes the other +1(imaginary) also to be rotated through 90 degrees in the same way, however we already started with a value at 90 degrees to the real number line so the result must be at 180 degrees to that i.e. at -1 (real).
Therefore, we have the result that the square root of -1 (real) is +/-1 (imaginary) also written as 1i or just i. Now I hope fairly obviously that for example the square of +/-2i is -4, the root of -9 is +/-3i etc.
If we have a number that is mixed real and complex, such as 3 + 4i then multiplying by that number will in fact produce a rotation defined by the numbers location relative to the real (x) axis and the size/scale factor is given by the real value they would have if rotated to be on the real (x) axis – so in fact the magnitude of 3+4i is 5 (Pythagoras) – this means that it can also be defined as length 5 but at the appropriate angle to the real (x) axis.
Now because complex number multiplication involves rotation as well as scaling if we also introduce addition into a formula thus producing translation as well as rotation and scaling then very interesting things happen to repetitive calculation and this is what Julia investigated.
3. Julia Sets are produced by taking a simple formula and applying it repeatedly feeding the new result back into the original calculation at each stage – this process is known as iteration, confusingly each stage of the process is also known as an iteration.
Julia investigated what is essentially the simplest formula for this, repeating z^2+c where z and c are both complex numbers, z being the feedback value and c being an arbitrary fixed constant or seed.
If this is considered in purely real number terms and the seed c is zero then the result is very straight forward – if we start with z as a real number <-1 or >1 then repeated squaring will result in divergence to infinity. If we start with z such that -1<z<1 then repeated squaring will result in convergence to zero. And finally starting with -1 or +1 then repeated squaring will tend to +1 in both cases. In the first case (z<-1 or z>+1) it’s said that the attractor is infinity, in the second case (-1<z<1) the attractor is zero and in the third case (z=-1 or z=1) then the attractor is +1. In fact with real numbers even when c is non-zero things never get more complicated than this case where the real number line is split effectively into 3 parts.
Doing the same thing with complex numbers and a constant/seed of zero is not much more interesting – in fact it just results in a circle of radius one where starting points outside the circle go to infinity, points inside go to zero and points at *exactly* 1 unit from the origin stay exactly 1 unit from the origin (though most rotate as the calculations are performed).
What excited Julia and later Mandelbrot was what happened when this constant was non-zero when using complex numbers, the results can be literally infinitely complicated. Now there are still essentially 3 possibilities, divergence, convergence and constancy but the boundary (where we have constancy) between the divergent and convergent areas can be convoluted to an infinite degree and it’s basically the shape of this that produces the Art of fractals.
4. Now Julia investigated these mathematical wonders by trying many starting values for each single constant value – such that each different constant value gives a different Julia Set. Mandelbrot decided to try something slightly different, he decided to use a fixed starting value of zero and examine what happened in a 2D plane for all the different constant values and this is what produced the classic Mandelbrot Set for z^2+c.
It turns out that Mandelbrot’s Set in fact gives us a nice “map” of all the Julia Sets such that each point on the Mandelbrot image corresponds to a particular Julia Set and not only that but the nearby geometry of the form of the Mandelbrot for the chosen point is matched closely in the corresponding Julia Set. This is great for artists as it means that once you’ve found shapes/detail you like on the Mandelbrot you can produce similar shapes and forms by switching to a Julia Set in that area.
5. Producing images from these fractals on a computer requires the same sort of approximation as the drawn ones i.e. it’s impossible to create the infinite limit version, therefore the methods used always involve some form of termination to give a decent finite approximation to the true fractal. Sometimes in Fractal Art this approximation is made deliberately poor for artistic reasons.
1. Fractal Software
www.ultrafractal.com (commercial, all types)
www.xenodream.com (commercial, 3D IFS and other 3D)
www.chaospro.de (freeware, all types somewhat Ultra Fractal compatible)
www.chaoscope.org (freeware, strange attractors)
apophysis.org (freeware, flame fractals)
2. Fractal Information
3. Other – including sources of other freeware etc.
The following images are copyright protected by David Makin.
We are so excited and thankful to Mr. David Makin for allowing us to peek into his world and provide us this rare interview! David has been a Maniac since June 8th 2014, which means you have been in the presence of a Fractal Legend and didn’t even know it!
This interview was conducted by Ricky Jarnagin, creator of the Facebook group Mandelbulb Maniacs July 29, 2017