Fractal Generator Instructions

Finding a fractal

First use Fractal_viewer.exe to find a nice looking fractal. To zoom in click the point you want to zoom in on and drag the mouse to the lower right, then release the mouse button. If you want to cancel a zoom after clicking but before releasing then drag the mouse to the upper left and release the button; It will only zoom in if the point where you release the mouse is below and to the right of the point where you clicked it. If you need to zoom out then press the "z" key and it will zoom out by a factor of 2.
There are several parameters that you can change in the top left. The letters listed in parentheses next to a parameter are the keys you must press to increase or decrease the parameter, respectively. To increase or decrease in larger amounts hold the left Shift key and for smaller amounts hold the left Control key. The best way to find out what these do is by changing them and seeing what happens.

Max Iteration

This parameter basically changes the detail level of the fractal. Increasing it will make the fractal take longer to draw. You will need to increase this as you zoom in (for very zoomed in fractals I use a MI of 10,000).

Colour Multiplier

This parameter determines the number of times the program cycles through the colour gradient. If it is set to 0 then the entire image will be black, but it can be set to negative values.

Transform Power

This parameter changes how fast the colours cycle through (from black->red->white->blue->black) as you move away from the edge of the set (the Mandelbrot set is the black area).

Distance Divide

This feature makes the image fade to black after a specified distance from the set. The Distance Divide parameter can be 0 or 1 (0 means off ans 1 means on). The Distance Divide B parameter specifies at what distance the fade starts and the A parameter specifies the distance at which the fractal becomes completely black. A should be less than B and B should be less than 1.

Saving a Fractal

Pressing the "x" key will not save an image of the fractal, instead it will append a command-line argument with all the current parameters into the "saves.txt" file. The command-line argument will look like this:

-CX -0.75 -CY 0 -MI 200 -CM 1 -ZM 0.5 -TP 0.4 -DD 1 -DA 0.15 -DB 0.4

To create an image, right click "Render_Fractal.bat" and click "edit". Now delete the line that is already there and replace it with (you can replace the 800 and 600 with any resolution):

Fractal_saver.exe -CX -0.75 -CY 0 -MI 200 -CM 1 -ZM 0.5 -TP 0.4 -DD 1 -DA 0.15 -DB 0.4 -IW 800 -IH 600

Save and close "Render_Fractal.bat" then run it by double clicking it. When the program finishes it will save the image as "fractal.bmp" (overwriting any existing "fractal.bmp" file). You can then open "fractal.bmp" with your favorite image editing program and save it in a compressed image format (I use PNG because it is lossless, using JPEG compression results in a smaller file size but there are usually easily visible artifacts).

Hints and Other Info

You can view a saved fractal by doing a similar thing as described above but with the "View_Fractal.bat" file (don't put in image width and height command-line arguments because the width and height of the viewer are fixed).
I usually make my images 2 or 4 times larger than what I want my final image to be (e.g. 7680 by 4320 for a 1920 by 1080 image) and use GIMP to reduce the image's size to the size I want. This makes the image look smoother and less pixelated.

If you find any bugs or have any questions, email me at kramin42[at]gmail[dot]com.

This program is for Windows, but if you want a Mac or Linux version then email me (I kinda want to get it to work on a Mac anyway).
Also, if you want the source code then feel free to email me (although it's not very organised).

Command-Line Arguments

Type "int" means it must be an integer value (e.g. 6).
Type "double" means it must be a decimal value (e.g. 6.5432).
-IW ###		image width (type int)

-IH ###		image height (type int)

-CX ###		x position of center of screen/image (type double)

-CY ###		y position of center of screen/image (type double)

-MI ###		maximum iteration (type int)

-CM ###		color change multiplier (type int)

-TP ###		transformation power (type double)

-ZM ###		zoom (type double)

-DD #		distance divide (0 or 1) (make brightness fade out further away from the fractal)
-DA ###		distance divide constant A (double between 0 and 1)   (point where it becomes black)
-DB ###		distance divide constant B (double between 0 and 1)   (point where it starts fading)