User Suggestions

From Mandelbulber Wiki
Jump to: navigation, search

Feature requests should be posted in the forum.

How to create textured 3D mesh

Rendering footage for Planetariums (fulldome)

There are two methods for rendering footage for planetariums: Equirectangular projection and Fisheye

Equirectangular projection

  • Equirectangular projection, FOV = 1.0
  • Image width must be equal image height multiplied by 2
  • Using the Screen Space Ambient Occlusion effect is not recommended when using equirectangular projection because a border-artifact will be visible; therefore when the equirectangular projection is converted to fisheye, you will see the border-artifact within your image.


  • Fisheye, FOV = 0.8
  • Setting FOV to 1 causes some weird bubbling distortion around the edges when projected on a dome. So .8 smoothes this out.
  • This method allows you to immediately put the footage onto the dome without post processing. Rendering with a fisheye lens is the fulldome production standard.

Fractal creation tips

  • If you are creating a hybrid fractal with Mandelbox or IFS formulas, use 'linear DE mode'.
  • Trying adjusting the Mandelbox scale to -2 for a pleasing fractal.

How to record flight animation live

  • Mouse position in relation to the middle of the render window determines the camera view angle. The flight speed is determined by the flight speed value. Flight speed can be changed by clicking left or right mouse button.
  • If you click record path and then move your mouse to the middle of the render window, the begining of your flight path is unusable. This is unsatisfactory since we must render it. So use this method instead: Make sure the 'record path' button is selected by hitting TAB. Keep your mouse in the center of the render window. When you are ready to record, hit ENTER on your keyboard and it will start recording the path.
  • To change the flight speed value, simply TAB over it to and you can change it live.
  • Any other params cannot be changed live. Only before or after recording the path.

What is an average number for "Distance from last keyframe" for fluid keyframe/timeline animation?

  • It depends how close to the fractal surface you want to fly. Total size of Mandelbox is about 10. So if you go with step about 1.0, you will go through whole Mandelbox in about 10 keyframes. But if you want to fly between of some detailed structures very close to the fractal, step value 0.000001 should be to high (or to low). You have to feel it. There is no recipe for this. Flying speed can varying along the animation. If you the camera is far outside the fractal, you can move the camera by long distance. But during closing up the fractal surface you can decrease speed. You have to continuously adapt the flight speed upon the situation. It is unrealistic to always move the camera with the same speed.
  • If you use mouse clicking on the rendered image and the "Mouse click close-up ratio" is set to 5, then you should create one keyframe for each "click".
  • If you use arrows and Forward/Backward buttons, you have to observe "Estimated viewpoint distance to the surface" and "Distance form last keyframe" values. If you want to create smooth flight you should try to keep for each keyframe similar values for "Distance from last keyframe" - you will get almost constant flight speed. But if you want to make "zoom in" animation, you should observe distance to fractal surface. You shouldn't decrease distance more than 5 times per keyframe.

Suggested settings for an keyframe/timeline animation camera

  • Step for camera moving multiplied by DE: from 0.5 to 3.0
  • Absolute distance mode: checked for flight animation, unchecked for closing up
  • Absolute movement distance: depends on required flight speed and how close to fractal surface the camera is
  • Rotation step in degrees: from 5 to 30
  • Mouse click close-up ratio: from 3 to 5
  • Enable zoom by mouse click: checked
  • Go close to indicated surface: usually unchecked, but it is useful for flight-around animations
  • Rotation without using gamma angle: checked
  • Catmull-Rom Splines are used for interpolating between keyframes. These splines always passes through control points (keyframes) and gives smooth changes of position and velocity.

Optimizing render times

  • If "DE error" is high (above 1%) it means that raymarching algorithm is not accurate enough and you will observe noise in the render. When it is lower than 0.5%, the noise is almost invisible on images, especially where there is a lot of details. Always try to play with DE Step factor, because it has the biggest influence on rendering speed. You can use LQ (Low quality) or HQ (high quality) buttons to find "optimal" value of DE factor (it uses DE error value to find optimal DE factor). Then you can tune DE factor manually (check quality of image, not the "DE error").
  • Try not to change Max. iteration. In most cases it has no influence on rendering speed. The difference is only visible when you are rendering some cross-sections (using limits). Normally "rays" never reach high iteration regions, because may-marching threshold is based on the distance (not on maximum number of iterations). You can watch it in histograms window. On left side there is number of iterations histogram (scale is up to 64 iterations). For mandelbulbs and mandelboxes average number of iterations is between 5 and 20 (peak on histogram is on the left or in the middle).
  • About volumetric light it increases "DE error" value, because calculating of light rays uses not accurate ray-marching algorithm (for faster rendering). Fractal details will be still accurate. If image looks good, just ignore this. To get faster rendering of volumetric light you can decrease quality of this effect (default is 5) for instance to 1.0. rendering will be 5 times faster but there will be more noise on rays. On high resolution image noise is less visible.
  • About the formulas, the fastest is "Tglad's folmula Mandelbox". The slowest are Xenodreambuie's formula and all hybrids. One remark about hybrids. When in hybrid sequence the most of iterations are Mandelbox or some kind of IFS formulas always use "Linear DE Mode". Then ray-marching is much more accurate and you don't have to reduce DE Step factor (rendering is faster). Sometimes you have to try both modes and compare the result.

Slowest things to render

  • Volumetic light
  • Not DE shading mode - uses special algorithm for calculating normal vectors. It's very slow but surface is always smooth.
  • Ambient occlusion based on rays (not the one from Post effects tab) - speed depends on quality parameter - higher value = higher number of rays = much slower). Sometimes quality = 2 is enough.
  • Additional light sources. Rendering time = normal time * number of light sources (sometimes faster when lights are not so bright - there is some optimization)

Limiting CPU usage

When rendering an animation on a laptop it can sometime be useful to limit the CPU usage of Mandelbulber. For instance some laptops are not designed for being run at 100% CPU load for a long time, because the cooling cannot handle it. In this case one solution, under linux, is to use cpulimit. First use

  ps faux | grep mandelbu

to find the process id of Mandelbulber and then limit the cpu usage with

  cpulimit -p <process id> -l 50

Keyframe Animation

  • Thoughts on experimenting with timing and spacing for keyframe animation:
  • In order to achieve a relatively smooth flight path, I used only the 3D navigator and looked at the ratio of the "distance to surface" and "distance from last keyframe." While zooming around the fractal, the distances change depending on how far "in" you go. However, the "distance to surface" and "distance from last keyframe" seem to change relative to each other. I adjusted the "step for camera" to
  • In a the "key" animation test, I kept the ratio of the two between 0.3-0.4 and set 150 frames between each keyframe. I imagine that you could keep the ratio constant at any value and adjust the frames between keyframes accordingly. However, I did notice that too many keyframes produced jerky motions.

Some problems to look out for

  • When there are bits of fractal in the screen that are not where you are trying to go, Mandelbulber registers these fractal bits as being extremely close and throws of the ratio.
  • Try to use only the "forward" button, as using the "backward" button does not update the "distance from last keyframe" and can make everything confusing. Starting over from the previous keyframe is often the easiest.
  • Looking at the ratio doesn't do too much for weird spline curves. However, through trial and error and by thinking about each keyframe in advance, I managed to avoid most of the weird slow-stop motions.

Coloring fractals

  • I discovered a strategy to color fractals nicely. I pulled a color palette from into Photoshop, added another color or two for 6-7 colors, and created an equally-spaced gradient from those colors. Then I pulled that image into Mandelbulber using "get palette from jpeg," and set a high color speed (around 100) to get all the colors. Because the gradient is already there, this strategy avoids the garish, blocky feeling of a high color speed and makes the colors transition very nicely.

Random thoughts

  • As you get closer to a fractal surface, the fog recedes. In my "key" animation, I adjusted the fog to be closer on almost every keframe.
  • Back to spline curves--I haven't quite figured this out, but I bet that using either left-hand rotation navigation panel or the right-hand up-down-sideways navigation panel, rather than both, might reduce some of the weird spline things. I think the right-hand one creates that weird, unexpected side motion, while the left-hand rotation allows the camera to travel forward the entire time, which would be nicer for the dome.
  • When working with a mandelbox, checking "enable rotation of each folding plane" creates lots of rounded shapes
  • There's still a little bit of flickering in the frames, I think because there are lots of tiny holes in the fractal. Do you know if that could be fixed with anti-aliasing?

SSAO border artifact

  • When using the Screen Space Ambient Occlusion effect, a 3px lighter-color border will show up on your render. This is because near the image edge there is not enough z-buffer data to calculate the proper shading.

How to manipulate Mandelbox color settings