Welcome to Fractal Forums

Fractal Software => Mandelbulber Gallery => Topic started by: Buddhi on January 01, 2016, 10:13:13 PM




Title: Riemann Sphere Msltoe
Post by: Buddhi on January 01, 2016, 10:13:13 PM
Riemann Sphere Msltoe

(http://nocache-nocookies.digitalgott.com/gallery/18/640_01_01_16_10_13_12.jpeg)

http://www.fractalforums.com/index.php?action=gallery;sa=view;id=18544

Image rendered with Mandelbulber 2.07 (version actually under development)


Title: Re: Riemann Sphere Msltoe
Post by: M Benesi on January 01, 2016, 10:42:03 PM
The hairs on it are pretty cool.  Nice...


Title: Re: Riemann Sphere Msltoe
Post by: mclarekin on January 02, 2016, 12:14:27 AM
@ M.Benesi, DarkBeam?

But have I got coded it correct. I can reduce the hair by decreasing bailout, but that forces me to reduce the DE step multiplier resulting in long render time.

(BTW the formula works well as a pre_transform before adding a Mbulb or quaternion.)



Code:
//MsltoeRiemannSphere     Variation1----------------------------------
//  http://www.fractalforums.com/new-theories-and-research/revisiting-the-riemann-sphere-%28again%29/
void RiemannSphereMsltoeV1Iteration(CVector3 &z, const cFractal *fractal)
{
  double r = z.Length();
  if (r < 1e-21) r = 1e-21;
  z *= fractal->transformCommon.scale/r;
  double w = 1.0 - z.z;
  if (w > -1e-21 && w < 1e-21) w = (w > 0) ? 1e-21 : -1e-21;
  w = 1.0/w;
  CVector3 t3;
  t3.x = z.x * w;
  t3.y = z.y * w;

  t3.z = (r - 1.5) * (1.0 + t3.x * t3.x + t3.y * t3.y);

  if (fractal->transformCommon.rotationEnabled)
  {
   t3 = fractal->transformCommon.rotationMatrix.RotateVector(t3);
  }

  t3.x = t3.x - floor(t3.x + 0.5);
  t3.y = t3.y - floor(t3.y + 0.5);

  z = t3 * fractal->transformCommon.constantMultiplier441;

  z += fractal->transformCommon.additionConstant000;
}


Title: Re: Riemann Sphere Msltoe
Post by: visual.bermarte on January 02, 2016, 03:29:07 PM
I had the same problem.
http://bit.ly/1MMHwHO


Title: Re: Riemann Sphere Msltoe
Post by: M Benesi on January 03, 2016, 10:16:14 PM
I think the hair is awesome.  I was just wondering about a faster way to put hairs on fractals, although this code might be fast enough.  :D

  I'll check Msltoe's code and compare it to yours, but... I like the hairs, so feel a bit conflicted about you eliminating them. 


Title: Re: Riemann Sphere Msltoe
Post by: 3dickulus on January 03, 2016, 10:24:04 PM
@MB maybe hair spraygun  88)

interesting object, fragment script? would lower precision float trim the hair a bit?


Title: Re: Riemann Sphere Msltoe
Post by: mclarekin on January 04, 2016, 12:00:45 AM
Hmmm i did not think about I the fact that I am writing the code in double precision.  Yes, when I bring the ray marching step multiplier back towards 1.0, the hair is reduced,

 Usually hair is a problem for rendering, but I notice this hair renders quite well.  I could'nt find an image to compare this formula with, but I have also coded an earlier Msltoe Riemann Sphere formula which does reproduce the posted image. And I still have some DarkBeams versions to code as well.


 As I may have mentioned this type of formula is cool to use as the first part of a hybrid, like Benesi T1PT. (Examples of base shapes both attached)



Title: Re: Riemann Sphere Msltoe
Post by: M Benesi on January 04, 2016, 05:46:41 AM
@MB maybe hair spraygun  88)
  might have been what I was thinking....  maybe...  :D


  @mclarekin- yeah, that's right. still like the hair.