Logo by Sockratease - Contribute your own Logo!
News: Did you know ? you can use LaTex inside Postings on fractalforums.com!
 
*
Welcome, Guest. Please login or register. April 23, 2017, 07:45:29 PM


Login with username, password and session length



Pages: [1]   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: 3D Mandelbrot Set Phase Shift Animations  (Read 4605 times)
0 Members and 1 Guest are viewing this topic.
bugman
Conqueror
*******
Posts: 122



WWW
« on: November 30, 2009, 05:45:41 PM »

Here is a way to continuously transform the negative z-component 3D Mandelbrot into the positive z-component Mandelbrot (with a rotation) by adding a phase shift:
{x,y,z}^n = r^n*{cos(phi)*cos(theta), cos(phi)*sin(theta), sin(phi)}
r=sqrt(x▓+y▓+z▓), theta=n*atan2(y,x), phi=n*asin(z/r)+phase
where the phase varies continuously from goes from 0 to 2pi.

Here is a link showing what this animation looks like for the 8th order version:
http://bugman123.com/Hypercomplex/Mandelbulb8.m1v

Here is a link showing what this animation looks like for the quadratic version:
http://bugman123.com/Hypercomplex/Mandelbulb.m1v


* Mandelbulb8.gif (34.62 KB, 70x70 - viewed 1598 times.)

* Mandelbulb.gif (75.09 KB, 70x70 - viewed 1534 times.)
« Last Edit: December 06, 2009, 08:47:39 PM by bugman » Logged
cbuchner1
Fractal Phenom
******
Posts: 443


« Reply #1 on: November 30, 2009, 06:58:11 PM »

Very cool - I'll try and see if this is compatible with my raymarching code on the GPU. Having an animated phase in realtime would sure look nice. It might even look nice when animated veeeeerrry slowly, while the camera is deeply zoomed in.

UPDATE: Yes, I got it to work. But on my first attempt I forgot to add the phase on the part where phi is computed before entering the iterative loop. It looked distinctly different than your videos, but also very cool. It appeared more like twisting these prodtruding bulbs instead of marching the bulbs over the surface.

It seems that the initial choice of the phi phase versus the iterative choice of the phase opens a 2-dimensional parameter space for animating the fractal. As Mr. Spock would say: Highly fascinating!

How do the theta angle (in the x,y plane) effects compare to this?

I will make a new CUDA version available soon, maybe I will even open a blog for my CUDA contraptions because people had trouble getting nVidia forum accounts lately. Without such an account, the download was not possible.

Christian

« Last Edit: November 30, 2009, 11:55:17 PM by cbuchner1 » Logged
bugman
Conqueror
*******
Posts: 122



WWW
« Reply #2 on: December 01, 2009, 01:38:28 AM »

Christian,
Adding a phase shift to theta is not very interesting because it merely rotates the overall structure. However, I am curious to know what formula you used to get the prodtruding bulbs to twist. Do you have an animation that we can see?
Logged
cbuchner1
Fractal Phenom
******
Posts: 443


« Reply #3 on: December 01, 2009, 02:08:03 AM »

Not really a formula. I've done the +phase in the iterative part of the loop only, but before entering the loop phi gets a start value that is asin(z/R). There I simply forgot to add +phase and received the effect that I described.

One could do something like the code below and choose phase1 and phase2 freely. In my accidential case described above phase1 was 0 and phase 2 was sweeped, resulting in the twisting effect. But one could also sweep phase1 from 0 to 2PI and phase2 from 2PI to 0 simultaneously. Or set phase2 = cos(t) and phase1 = sin(t) where t is being incremented. Any continuous sweep over this 2D plane would look cool. The possibilities are limitless wink

Code:
phi = asin(z/R) + phase1;
while (--iterations)
{
   // do your dz and z iterations, and finally update phi...
   phi = asin(z/R) + phase2;
}

I've already published the updated Mandelbulb version on the nVidia forums, the two phase shift animation modes are available by pressing the space bar a couple of times (it cycles through the modes).

When I get Fraps or similar video capture tools to run, I'll upload some VGA sized video to vimeo or youtube. But it will have to wait until tomorrow. It's what...  2AM now ? wink

At VGA size this renders at about 20-25 FPS on my nVidia 9600GSO (raytraced with phong shading). Adding reflections brings this down to some 7 or 8 FPS. This is a nearly 3 year old graphics card. I can only guess that a 280GTX would render this full HD (1920x1080) in real time if one can foot the power bill.
« Last Edit: December 01, 2009, 02:19:50 AM by cbuchner1 » Logged
Nahee_Enterprises
World Renowned
Fractal Senior
******
Posts: 2250


use email to contact


nahee_enterprises Nahee.Enterprises NaheeEnterprise
WWW
« Reply #4 on: January 30, 2010, 08:24:06 PM »

Here is a way to continuously transform the negative z-component 3D Mandelbrot
into the positive z-component Mandelbrot (with a rotation) by adding a phase shift....

Here is a link showing what this animation looks like for the 8th order version....

I am just now getting around to viewing some of the animations I missed, and this one is rather cool the way it collapses in on (or expands out on) itself.
Logged

Pages: [1]   Go Down
  Print  
 
Jump to:  


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.307 seconds with 29 queries. (Pretty URLs adds 0.015s, 2q)