Welcome to Fractal Forums

Fractal Math, Chaos Theory & Research => Mandelbulb Renderings => Topic started by: David Makin on December 16, 2009, 12:19:07 AM




Title: At the forest's edge (degree 6 Juliabulb)
Post by: David Makin on December 16, 2009, 12:19:07 AM
"At the forest's edge"

(http://fc03.deviantart.net/fs71/f/2009/349/b/6/At_the_forest__s_edge_by_MakinMagic.jpg)

If no image above then look here:

http://makinmagic.deviantart.com/art/At-the-forest-s-edge-146881823 (http://makinmagic.deviantart.com/art/At-the-forest-s-edge-146881823)


Title: Re: At the forest's edge (degree 6 Juliabulb)
Post by: jehovajah on December 16, 2009, 11:02:43 AM
Really evocative and organic. Fantastic dave.


Title: Re: At the forest's edge (degree 6 Juliabulb)
Post by: kram1032 on December 16, 2009, 04:12:11 PM
really nice forestish colours as always :)
maybe you could do a fall-version for trees :)


Title: Re: At the forest's edge (degree 6 Juliabulb)
Post by: Snakehand on December 16, 2009, 04:55:49 PM
Nice. May i ask how it was coloured ?


Title: Re: At the forest's edge (degree 6 Juliabulb)
Post by: David Makin on December 16, 2009, 08:51:02 PM
Nice. May i ask how it was coloured ?

Solid is based on the distance estimation threshold alone *not* on the bailout iteration which means that the 3D contours of the smooth iteration values do not match the surface contours hence the colouring is using colour by the smooth iteration values for the solid pixels.
The lighting is a fairly standard Phong model with two remote light sources - one from the direction of the camera and the other from a different direction, the light intensities of these were adjusted and the specular amount returned by the camera source was reduced. Also the Phong model was enhanced by using suitably adjusted point orbit trap (to origin) values to adjust the ambient light level (my version of the simplistic ambient occlusion method suggested in these forums, I don't know if I've done it the intended way but it works well).


Title: Re: At the forest's edge (degree 6 Juliabulb)
Post by: Buddhi on December 18, 2009, 07:28:58 PM
Now I'm writing some fast renderer for Mandelbulbs (render time was reduced to 2 seconds in resolution 1280x1280) but I still fighting with ambient occlusion generated using orbit traps. I made lots of trials and I really don't know how to define this trap. My results are completely different than I saw for example in post: http://www.fractalforums.com/3d-fractal-generation/true-3d-mandlebrot-type-fractal/msg8595/#msg8595
I have very small experience with orbit traps and I don't know what exactly means "point trap centred on the origin". Please :help: how to define this orbit trap. The best for me will be some pseudo-code.

I attached my best result with orbit traps but this is not what I expected (it looks like brightness proportional to distance from centre of fractal).


Title: Re: At the forest's edge (degree 6 Juliabulb)
Post by: David Makin on December 18, 2009, 08:56:16 PM
I have very small experience with orbit traps and I don't know what exactly means "point trap centred on the origin". Please :help: how to define this orbit trap. The best for me will be some pseudo-code.

I attached my best result with orbit traps but this is not what I expected (it looks like brightness proportional to distance from centre of fractal).

Hi

Before the start of each iteration loop do:

  float min = 1e200

At the end of the iteration loop just before the bailout test do:

  if magnitude<min
    min = magnitude
  endif

Actually you'd probably use magnitude^2 rather than magnitude to avoid getting the sqrt - as you'd do for the bailout test :)

To use the value when you've found the solid point then first get the sqrt if you used magnitude^2, then use:

  if min<minorbit
    min = minorbit
  endif
  if min>maxorbit
    min = maxorbit
  endif
  min = (min-minorbit)/(maxorbit-minorbit)

Where minorbit is a defineable minimum value (typically 0.4) and maxorbit is a defineable maximum value (typically 1.0).
You can then use the new value of min (range 0 to 1) to scale your normal ambient level either as it is, or by modifying min first for example using a user defineable gamma transform to adjust the relative brightness.
Obviously adjusting minorbit and maxorbit will have a major effect on the results.
I have also used 0.5 and 0.9 on some renders.
To test use the above code and just colour using the calculated value of min directly as the white level.


Title: Re: At the forest's edge (degree 6 Juliabulb)
Post by: Buddhi on December 18, 2009, 09:53:24 PM
Thanks David. The most important information for me is that I have to find minimum value of magnitude:

if magnitude<min
    min = magnitude
endif

Before your post I tried to use last value of magnitude.
Now it's working  :D