One of the features I have wanted to implement since the earliest versions of Visions of Chaos has been a formula editor and compiler so users can experiment with their own fractal formulas. This has also been requested many times from various users over the years. Now it is finally possible.
Rather than write my own formula parser and compiler I am using the OpenGL Shading Language. GLSL gvies faster results than any compiler I could code by hand and has an existing well documented syntax. The editor is a full color syntax editor with error highlighting.
As long as your graphics card GPU and drivers support OpenGL v4 and above you are good to go. Make sure that you have your video card drivers up to date. Old drivers can lead to poor performance and/or lack of support for new OpenGL features. In the past I have had outdated drivers produce corrupted display outputs and even hang the PC running GLSL shader code. Always make sure your video drivers are up to date.
For an HD image (1920×1080 resolution) a Mandelbrot fractal zoomed in at 19,000,000,000 x magnification took 36 seconds on CPU (Intel i7-4770) vs 6 seconds on GPU (GTX 750 Ti). A 4K Mandelbrot image (3840×2160 resolution) at 12,000,000,000 x magnification took 2 minutes and 3 seconds on CPU (Intel i7-6800) and 2.5 seconds on GPU (GTX 1080). The ability to quickly render 8K res images for dual monitor 4K displays in seconds is really nice. Zooming into a Mandelbrot with minimal delays for image redraws really increases the fluidity of exploration.
So far I have included the following fractal formulas with the new Visions of Chaos. All of these sample images can be clicked to open full 4K resolution images.
Buffalo Fractal Power 2
Buffalo Fractal Power 3
Buffalo Fractal Power 4
Buffalo Fractal Power 5
Burning Ship Fractal Power 2
Burning Ship Fractal Power 3
Burning Ship Fractal Power 4
Burning Ship Fractal Power 5
Celtic Buffalo Fractal Power 4 Mandelbar
Celtic Buffalo Fractal Power 5 Mandelbar
Celtic Burning Ship Fractal Power 4
Celtic Mandelbar Fractal Power 2
Celtic Mandelbrot Fractal Power 2
Celtic Heart Mandelbrot Fractal Power 2
Heart Mandelbrot Fractal Power 2
Lyapunov Fractals
Magnetic Pendulum
Mandelbar (Tricorn) Fractal Power 2
Mandelbar Fractal Power 3
Mandelbar Fractal Power 3 Diagonal
Mandelbar Fractal Power 4
Mandelbar Fractal Power 5 Horizontal
Mandelbar Fractal Power 5 Vertical
Mandelbrot Fractal Power 2
Mandelbrot Fractal Power 3
Mandelbrot Fractal Power 4
Mandelbrot Fractal Power 5
Partial Buffalo Fractal Power 3 Imaginary
Partial Buffalo Fractal Power 3 Real Celtic
Partial Buffalo Fractal Power 4 Imaginary
Partial Burning Ship Fractal Power 3 Imageinary
Partial Burning Ship Fractal Power 3 Real
Partial Burning Ship Fractal Power 4 Imageinary
Partial Burning Ship Fractal Power 4 Real
Partial Burning Ship Fractal Power 5
Partial Burning Ship Fractal Power 5 Mandelbar
Partial Celtic Buffalo Fractal Power 4 Real
Partial Celtic Buffalo Fractal Power 5
Partial Celtic Burning Ship Fractal Power 4 Imaginary
Partial Celtic Burning Ship Fractal Power 4 Real
Partial Celtic Burning Ship Fractal Power 4 Real Mandelbar
Perpendicular Buffalo Fractal Power 2
Perpendicular Burning Ship Fractal Power 2
Perpendicular Celtic Mandelbar Fractal Power 2
Perpendicular Mandelbrot Fractal Power 2
Quasi Burning Ship Fractal Power 3
Quasi Burning Ship Fractal Power 5 Hybrid
Quasi Celtic Heart Mandelbrot Fractal Power 4 Real
Quasi Celtic Heart Mandelbrot Fractal Power 4 False
Quasi Celtic Perpendicular Mandelbrot Fractal Power 4 False
Quasi Celtic Perpendicular Mandelbrot Fractal Power 4 Real
Quasi Heart Mandelbrot Fractal Power 3
Quasi Heart Mandelbrot Fractal Power 4 Real
Quasi Heart Mandelbrot Fractal Power 4 False
Quasi Heart Mandelbrot Fractal Power 5
Quasi Perpendicular Burning Ship Fractal Power 3
Quasi Perpendicular Burning Ship Fractal Power 4 Real
Quasi Perpendicular Celtic Heart Mandelbrot Fractal Power 4 Imaginary
Quasi Perpendicular Heart Mandelbrot Fractal Power 4 Imaginary
Quasi Perpendicular Mandelbrot Fractal Power 4 False
Quasi Perpendicular Mandelbrot Fractal Power 5
A lot of the above formulas came from these summaries stardust4ever created.
All of these new custom fractals are fully zoomable to the limit of double precision floating point variables (around 1,000,000,000,000 magnification in Visions of Chaos). The formula compiler is fully supported for movie scripts so you can make your own movies zooming into these new fractals.
This next sample movie is 4K resolution at 60 fps. Each pixel was supersampled as the average of 4 subpixels. This took only a few hours to render. The resulting Xvid AVI was 30 GB before uploading to YouTube.
So, if you have been waiting to program your own fractal formulas in Visions of Chaos you now can. I look forward to seeing the custom fractal formulas Visions of Chaos users create. If you do not understand the OpenGL shading language you can still have fun with all the default sample fractal formulas above without doing any coding.
Jason.