Visions of Chaos Program Instructions

by Tad Boniecki at
May 2010

The Visions of Chaos program is available for free at Softology.

Although Visions of Chaos (VOC) can draw a wide variety of computer graphics, these instructions focus exclusively on just one part, which I find fascinating. Three-dimensional analogues of the Mandelbrot set, called mandelbulbs, can be made by selecting Hypercomplex Fractals -> Mandelbulb from the Mode menu. Three-dimensional analogues of Julia sets, called Juliabulbs, are made by checking the Enable Juliabulb box in the Mandelbulb Options window.

Making hyper-complex fractals

Note that F1 brings up some useful help screens.

1) Firstly, go to Options -> Options and tick the box "Auto save mandelbulb mb file with images". Once ticked this avoids the need to save the parameter file each time you save a fractal image to jpg or bmp. Images are saved using Image -> Save Image. Also in options I recommend unchecking the box "Clicking images generated pushes stop button." as accidentally clicking on an image being rendered could waste 10 hours of CPU time.

2) I recommend running in full screen mode (using F11 or the icon next to '?') because it allows you to make images of the same size as your screen resolution. Otherwise, the program will clip the image.

3) Since ray tracing is very CPU-intensive it is wise to do all the setting up in the preview screen before hitting "Render" to make the full-size image. Hit Image -> Generate and then Preview.

4) I recommend using power values between 2 and 30. In addition to positive integers, fractional and negative power values are permitted. Values between -3 and -30 are also worth trying.

5) If you want to see more detail then decrease Epsilon by a factor of 10. Increasing iterations may also help. If the image is too 'dusty' then decrease these values.

6) Apart from entering the power value, the two other ways to generate an entirely new fractal are by using a) Randomize or b) Enable Julia Bulb plus hitting Random.

7) The camera controls refer to moving the camera, not the object. Yaw left and yaw right mean to turn the camera around a vertical axis. Tilt up and down turn the camera around its horizontal axis. Roll means to rotate the camera around the axis it is pointing along, so a roll of 180 degrees would make the image upside down. The pan controls refer to moving the camera as if on a rail in the specified direction.

8) To zoom in to a detail that you want to fill the screen first move that detail to the centre using up/down and left/right. Then decrease FOV (field of view, in degrees - keep it below 90) till it fills the screen. Use Undo if the image disappears, as it may if you get too close or overshoot sideways. Be warned that the image tends to change as you zoom into it.

9) The three numbers next to Rotation specify the orientation of the mandelbulb. If you add 30 to the first value the object will rotate 30 degrees downwards around the horizontal axis (x-axis). If you add 40 to the second value then it will rotate 40 degrees rightwards around the vertical axis (y-axis). If you add 50 to the third value it will rotate 50 degrees clockwise around the axis that is perpendicular to the screen (z-axis).

10) I recommend using a Supersample value of 4 to make good quality renderings of images that have a fair bit of detail. Supersample does anti-aliasing automatically. You might want to switch Supersample off in previews or decrease it to 2. Supersample of 5 also makes a difference to detailed images, though it is a case of diminishing returns.

11) Default view puts it back to the Mandelbulb parameters when VOC first loads.

12) Phong shading colours according to the surface angle compared to the light position. Radial shading colours based on the 3D distance from the center of the Mandelbulb to the point being shaded. Orbit shading colour is based on how many iterations it takes for a point to be reached.

13) There are many colour palettes in VOC. Ones I've had success with under phong shading are:
BLEND8 - green & red - OK
Colorshow firefox - bright colours
Fadern2 - red, blue, yellow - some promise
gallet01 - yellow & brown - nice. I use this as my default.
gallet03 - brown - good, a sober choice
gallet06 - green, purple, orange - shows some promise
gallet07 - yellow, orange, white - striking
gallet09 - yellow, orange, red - striking
Genetic1 - garish, but can work well
Genetic8 - garish, but good for circus effects
sgg072 - interesting colours, mostly red
sgg075 - vibrant warm colours - good
Sinpal14 - bright colours
Wizzl18 - very lively colours

14) Glow should be used sparingly. Spikes can also get tiresome after a while.

15) The various options in "Formula" give different versions of the image.

16) Juliabulb images tend to be less interesting than mandelbulbs. However, since there are infinitely many of these for each power formula, there is more to explore.

17) To increase throughput it is a good idea to run multiple copies of VOC simultaneously, especially overnight.

18) To make a mandelbulb movie takes a long time, so you might want to let the PC generate the frames overnight. First set Options -> Preset Image Sizes to 320 x 240 to minimise execution time. Generate the first image using Render with Supersample at 3 or less. Click Clear Current 2D Script from the Scripts menu. This will ensure that the script is empty. Click Add Current Point To 2D Script from the Scripts menu. This sets the current image as the start of the movie. Render the end image of the movie, eg zoom in to the first image. Click Add Current Point To 2D Script again from the Scripts menu. It will prompt you for the number of frames. Choose 100. Select Create Frames from the Frames menu and click on Generate Frames. This generates the intermediate frames that will be used in the final AVI file. This step takes a long time. Then the AVI Build Options screen appears - click on Create AVI. In case you want to make more than one movie at the same time I recommend clicking Options->Directories and "Create new subfolder for each movie being created."

As movies can take days or weeks to make, it is a good idea to make a pilot movie first. Set screen size to 160 x 120 and make a 100 frame movie. If this is smooth enough and is what you want then make the full-size movie. It's also wise to calculate how long the movie will take to generate before starting the run.

19) If the image is very dark and increasing the brightness does not help then try setting the Randomize option to Lights and click on Randomize. If the shadowed areas of the image are too dark then decrease the Minimum Orbit value in Ambient Occlusion.