Logo by Maya - Contribute your own Logo!

END OF AN ERA, FRACTALFORUMS.COM IS CONTINUED ON FRACTALFORUMS.ORG

it was a great time but no longer maintainable by c.Kleinhuis contact him for any data retrieval,
thanks and see you perhaps in 10 years again

this forum will stay online for reference
News: Check out the originating "3d Mandelbulb" thread here
 
*
Welcome, Guest. Please login or register. March 28, 2024, 10:57:27 AM


Login with username, password and session length


The All New FractalForums is now in Public Beta Testing! Visit FractalForums.org and check it out!


Pages: 1 [2] 3   Go Down
  Print  
Share this topic on DiggShare this topic on FacebookShare this topic on GoogleShare this topic on RedditShare this topic on StumbleUponShare this topic on Twitter
Author Topic: Better DE estimate using orbit traps  (Read 19876 times)
Description: Using orbit traps to address overstepping
0 Members and 6 Guests are viewing this topic.
Timeroot
Fractal Fertilizer
*****
Posts: 362


The pwnge.


WWW
« Reply #15 on: January 27, 2010, 01:49:26 AM »

I don't know very much at all about DE (especially its computation) but I thought that I would add to the discussion of this 0.521 constant that this DE is not accurate - it can be off by a factor as much as 4 or 1/4 at times. This will make it significantly harder to find an analytical value for 0.521, I predict. If someone uses Distance Calculation (completely ridiculous for high-speed renders), which involves truly checking each point in the vicinity until one is found sufficiently close to the set, and that also seems affected by 0.521.... that would probably give could clues to determining it.
Logged

Someday, man will understand primary theory; how every aspect of our universe has come about. Then we will describe all of physics, build a complete understanding of genetic engineering, catalog all planets, and find intelligent life. And then we'll just puzzle over fractals for eternity.
David Makin
Global Moderator
Fractal Senior
******
Posts: 2286



Makin' Magic Fractals
WWW
« Reply #16 on: January 27, 2010, 03:43:48 AM »

I don't know very much at all about DE (especially its computation) but I thought that I would add to the discussion of this 0.521 constant that this DE is not accurate - it can be off by a factor as much as 4 or 1/4 at times. This will make it significantly harder to find an analytical value for 0.521, I predict. If someone uses Distance Calculation (completely ridiculous for high-speed renders), which involves truly checking each point in the vicinity until one is found sufficiently close to the set, and that also seems affected by 0.521.... that would probably give could clues to determining it.

Well yes, analytical DE is an estimate after all, but until a better way of rendering 3D+ objects is found I'll stick with it - using "solid on iteration" is nowhere near as nice since you'll always end up either with areas without any detail and/or areas with significant aliasing (unless you use a volumetric or pseudo-volumetric method which would be much slower anyway, though it produces nice results).
I was just hoping/wondering if a method based on the apparent universality of the "0.521" (and the fact that the min distance to origin trap value can match the variation in the smooth iteration colouring) could be arrived at that produces results comparable with the current analytical DE but faster smiley
Also I think you'll find that generally DE is actually pretty accurate, the problem with the "stars" on the Mandelbulbs is something new - I can't think of any similar problems on hypercomplex fractals (in the widest sense) - the problem with Julia Sets is admittedly pretty universal.

Utilising the 0.521 result directly and applying it as a "delta" method yields:

                  DE = 0.521*delta/abs(smoothiter1-smoothiter0)

Under experimentation this actually needs adjusting to match the analytical method and I found that using 0.2 instead of 0.521 works fine.

This is essentially one of the delta methods I tried previously - arrived at based on applying Newton's method, at the time I settled on this instead:

                  DE = 0.4/(distadjust + abs(smoothiter1-smoothiter0)/delta)

Where the default value of distadjust is 1.0.

The problem with the delta methods is that they are directional so one has to program around the problem of points where the rays are parallel or near parallel to the fractal surface.
Also the "stars" on the Mandelbulbs present a different problem for the delta methods smiley

« Last Edit: January 27, 2010, 04:03:53 AM by David Makin » Logged

The meaning and purpose of life is to give life purpose and meaning.

http://www.fractalgallery.co.uk/
"Makin' Magic Music" on Jango
Timeroot
Fractal Fertilizer
*****
Posts: 362


The pwnge.


WWW
« Reply #17 on: January 27, 2010, 06:17:07 AM »

I wasn't suggesting that we render with distance calculation, only that someone tries it to see if the 0.521 constant still applies.
Logged

Someday, man will understand primary theory; how every aspect of our universe has come about. Then we will describe all of physics, build a complete understanding of genetic engineering, catalog all planets, and find intelligent life. And then we'll just puzzle over fractals for eternity.
knighty
Fractal Iambus
***
Posts: 819


« Reply #18 on: January 30, 2010, 05:19:14 PM »

As promised, here is a rendering of the mix between Mandelbulb and juliabulb. I did compute d2M only once for this picture.


Here is a picture showing the iterations number used (the blue component IS the iterations number used at each pixel)


Here are the mandelbulb and juliabulb with their used iterations number.






Do you notice the "plumes" smiley

Have anyone tried this method?  cheesy
Logged
KRAFTWERK
Global Moderator
Fractal Senior
******
Posts: 1439


Virtual Surreality


WWW
« Reply #19 on: February 04, 2010, 09:47:51 AM »

It is so quiet in here...
This threads subject is something I have been wondering about, here is a closeup of a minibulb flowr, or star or whatever wink

So the "noise" in the flower is really a fault in the DE...

Bigger image here:

http://MANDELWERK.deviantart.com/art/Flower-of-the-Power-Eight-152854734

(I use  subblues pixelbender-script)


* FlowerSmall.jpg (135.69 KB, 793x728 - viewed 660 times.)
Logged

kram1032
Fractal Senior
******
Posts: 1863


« Reply #20 on: February 04, 2010, 11:42:11 AM »

That's pretty nice smiley
Looks like cartoon wind/clouds
Logged
knighty
Fractal Iambus
***
Posts: 819


« Reply #21 on: February 09, 2010, 09:40:45 PM »


So the "noise" in the flower is really a fault in the DE...


Yes it is!

Nice rendering  BTW smiley

Logged
hobold
Fractal Bachius
*
Posts: 573


« Reply #22 on: February 10, 2010, 09:15:53 AM »

And the fault in the DE is caused by the spherical coordinates having poles. All of the problematic areas where the DE oversteps are close to points where fractal structures radiate from a single central point such that they keep shrinking the closer they approach that center.

If one could reliably detect the presence of such a "black hole" that is sucking in the fractal, one could selectively reduce the distance estimates in only those areas.
Logged
KRAFTWERK
Global Moderator
Fractal Senior
******
Posts: 1439


Virtual Surreality


WWW
« Reply #23 on: February 10, 2010, 09:17:08 AM »


So the "noise" in the flower is really a fault in the DE...


Yes it is!

Nice rendering  BTW smiley

Thanks!  afro
Logged

Timeroot
Fractal Fertilizer
*****
Posts: 362


The pwnge.


WWW
« Reply #24 on: February 10, 2010, 07:19:46 PM »

And the fault in the DE is caused by the spherical coordinates having poles. All of the problematic areas where the DE oversteps are close to points where fractal structures radiate from a single central point such that they keep shrinking the closer they approach that center.

If one could reliably detect the presence of such a "black hole" that is sucking in the fractal, one could selectively reduce the distance estimates in only those areas.
Unfortunately, it's self similar, so I think (not 100% sure) that essentially the entire fractal acts that way. To get a relevant DE, it would need to behave differently based not only on the local "poleness", but also whether the "poleness" was how it actually behaves on that scale.
Logged

Someday, man will understand primary theory; how every aspect of our universe has come about. Then we will describe all of physics, build a complete understanding of genetic engineering, catalog all planets, and find intelligent life. And then we'll just puzzle over fractals for eternity.
hobold
Fractal Bachius
*
Posts: 573


« Reply #25 on: February 10, 2010, 08:22:39 PM »

Unfortunately, it's self similar, so I think (not 100% sure) that essentially the entire fractal acts that way. To get a relevant DE, it would need to behave differently based not only on the local "poleness", but also whether the "poleness" was how it actually behaves on that scale.
Yes and no. Obviously, the fractal iteration spreads such local poles potentially over the whole structure. But the math only really breaks down for points that are very close to the pole (it really only blows up right in the pole, but the numerics close to that will be red hot even some distance away).

I have wondered if an orbit trap around the poles would suffice to detect such points. But then, I don't have a grasp of what orbit traps mean mathematically. I don't understand why they work as a faked ambient occlusion, either. To me that was just voodoo. :-)
Logged
knighty
Fractal Iambus
***
Posts: 819


« Reply #26 on: February 10, 2010, 09:13:36 PM »

And the fault in the DE is caused by the spherical coordinates having poles. All of the problematic areas where the DE oversteps are close to points where fractal structures radiate from a single central point such that they keep shrinking the closer they approach that center.

Exact. The DE "breaks down" when zN goes near the z (up) axis for some N.

If one could reliably detect the presence of such a "black hole" that is sucking in the fractal, one could selectively reduce the distance estimates in only those areas.

This is exactly what I have suggested. The regions where the DE should be adapted are detected using an orbit trap on the 'up' axis. I'm getting pretty good restuls with this trick but it is empirical. Thanks! you have explained in two sentences what I was trying to explain in 10 posts  grin.

Unfortunately, it's self similar, so I think (not 100% sure) that essentially the entire fractal acts that way. To get a relevant DE, it would need to behave differently based not only on the local "poleness", but also whether the "poleness" was how it actually behaves on that scale.
Yes and no. Obviously, the fractal iteration spreads such local poles potentially over the whole structure. But the math only really breaks down for points that are very close to the pole (it really only blows up right in the pole, but the numerics close to that will be red hot even some distance away).

Also, new copies generated at each new iteration are smaller so the areas to refine are much smaller even if they are more numerous.

I have wondered if an orbit trap around the poles would suffice to detect such points. But then, I don't have a grasp of what orbit traps mean mathematically. I don't understand why they work as a faked ambient occlusion, either. To me that was just voodoo. :-)

Well, it works for me cheesy . Perhaps I should use the angle to the up axis instead. This sounds more logical... still ivestigating... and wish I have better math skills  cry
Logged
kram1032
Fractal Senior
******
Posts: 1863


« Reply #27 on: February 10, 2010, 10:23:46 PM »

as the poles are on the north and on the south, it should be pretty easy to find out when they are: always when the height-angle is close to +/- 90°
Logged
hobold
Fractal Bachius
*
Posts: 573


« Reply #28 on: February 10, 2010, 10:34:52 PM »

Thanks! you have explained in two sentences what I was trying to explain in 10 posts  grin.
*blush* I was only trying to explain it to myself ... you're welcome!

But if it is the case that I actually got this, then yes, angle to z axis would be a more appropriate orbit trap. Instead of the cylinder around z that you are currently using, you'd want to use a cone.

This can be done without trigonometry, using the implicit cone equation x^2 + y^2 = k*z^2, where smaller k makes for pointier (longer, thinner) cones, that capture a smaller neighbourhood of the pole. So you could just store the minimum k = (x^2 + y^2)/z^2 over all iterations as a measure of closeness to a pole. Beware of divide by zero in the z=0 plane. The value of k is undefined then, but you know that you are at the equator, which is as far from the pole as you can get. So you can just skip these for purposes of finding a minimum k.

Edit: you will probably want to use the square root of the minimum k value. That would be proportional to the angle in radians, at least near the pole. And then ... hmm ... maybe the value of that minimum k could directly be used to shrink the distance estimates, in good accordance with the shrinking feature size near the pole.
« Last Edit: February 10, 2010, 10:56:14 PM by hobold » Logged
knighty
Fractal Iambus
***
Posts: 819


« Reply #29 on: February 10, 2010, 11:20:32 PM »

Thanks, I'll try it. It's also posible to use
zo0 = asin( z/r );
which is already present in the formula. Your suggestion is useful in the case where I use polynomial (quick) form of the formula.(not fully implemented yet).

You have reminded me an important issue. It's important to prevent divides by zero. I'm curently using evaldraw which doesn't generate floating point exceptions. My script have not yet failed but this doesn't mean that I'm doing it right.
Logged
Pages: 1 [2] 3   Go Down
  Print  
 
Jump to:  

Related Topics
Subject Started by Replies Views Last post
Heart Shaped Orbit Traps General Discussion Nahee_Enterprises 0 3552 Last post May 18, 2007, 10:30:58 PM
by Nahee_Enterprises
Mandelbulb, spiral structures & orbit traps Other / General Discussion cytotox 3 11089 Last post December 10, 2010, 06:17:38 AM
by David Makin
Orbit Traps with Image Import UltraFractal fractalrebel 0 2736 Last post March 28, 2011, 08:44:49 PM
by fractalrebel
Convert a Distance Estimate to a Mesh General Discussion eiffie 9 7860 Last post October 11, 2011, 05:22:34 PM
by eiffie
Using the Jacobian to estimate distance Programming TruthSerum 7 6981 Last post July 06, 2014, 02:39:12 AM
by David Makin

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines

Valid XHTML 1.0! Valid CSS! Dilber MC Theme by HarzeM
Page created in 0.213 seconds with 26 queries. (Pretty URLs adds 0.013s, 2q)