Compiling, please wait...

Help & User Guide

Fractal Lab is a WebGL based fractal explorer allowing you to explore 2D and 2D fractal. The fractals are rendered using the OpenGL Shading Language (GLSL) to enable real-time interactivity.

Watch the introduction video.

WARNING: it is possible to create GLSL fractal shaders that will lock up your GPU requiring a hard reboot if pushed too hard. Use at your own risk!

WINDOWS USERS: you may experience long compile times as the fractal shaders are automatically converted from GLSL to a D3D9 compatible format. More details about the process in the ANGLE project.

Click the Render button to start, or choose from a preset in the Fractal library.

Navigation controls

Click and drag with the mouse to pan the camera.

  • w - forward
  • s - backward
  • a - strafe left
  • d - strafe right
  • q - move down
  • e - move up
  • z - decrease speed
  • x - increase speed
  • f or Esc - toggle fullscreen mode
  • p - toggle preview mode
  • i - save image

Holding shift while moving will increase speed by 10 times.
Holding alt will decrease speed by 10 times.
Holding command whilst dragging will rotate the fractal rather than pan the camera.

Parameters

All parameters apart from those in the Constants tab will be immediately effective. The cursor up/down arrows can be used to carefully tweak slider values. Hold down shift or alt to change the increment step.

Constants require the shader to be recompiled before they will take effect. The Recompile button will highlight when a recompilable change has been made.

The fractal library

Pressing the Save button will store the current parameters, vertex and fragment code to a Local Storage database. Use the same name as an existing entry to update it.

Note: the fractal library is specific to the browser on the machine it is used upon. Press the [+] next to the saved item to view and copy it's parameters. These parameters can be pasted into a new fractal and enables a way to share fractals.

Rendering images

By clicking the Save image button the current view will be saved as a PNG in the renders tab. To save the image to your hard drive drag it from the render tab to your desktop.

For best quality renders enable the Anti-aliasing checkbox and then recompile the fractal. Note: this will really slow down your computer and could freeze your system if you try to render an image that is too large!

Editing the fractal formulas

The formulas for the different fractals are defined in the Fragment shader tab. They are written in GLSL and is compatible to the OpenGL 2.0 ES level.

Parameter controls for the various uniform inputs are defined in a commented JSON block. See the code for example of how to define these.

Credits and links

A massive credit is due to the collaborative effort that goes on at Fractal Forums, which is the place for discussions on anything to do with fractals.

Special thanks goes to Daniel White, Paul Nylander, Tom Lowe, David Makin, Buddhi, Joy Leys, Knighty and Jan Kadlec for their work on developing the 3D fractal algorithms.

There are other similar 3D fractal desktop apps also worth checking out:
Mandelbulb 3D
Mandelbulber
Boxplorer
Fragmentarium

Other GPU related apps:
Shader Toy
Pixel Bender

For other generative and mathematical related graphics projects please visit subblue.com

License

This software is released under the GPL version 3 license.


		

Saved images are listed here. Drag the images to your desktop to save permanently.

Fractal Library

The fractal parameters are saved using localStorage and will persist between browser sessions.

Save Paste parameters...

Apply Cancel

Fractal Lab

Interactive WebGL fractal explorer.

WebGL not supported by your browser.

Unfortunately it seems that your browser doesn't yet support WebGL required for Fractal Lab.

However, WebGL is currently officially supported and enabled by default on the very latest Google Chrome and Firefox 4 beta browsers. You can also enable it on WebKit nightly builds too.

Watch the video below then come back using one of these browsers to start exploring!