Welcome to Fractal Forums

Fractal Software => Mandelbulb 3d => Topic started by: Lalla on August 03, 2012, 04:14:22 PM




Title: Some useful formulas to implement on new mdb 3d versions?
Post by: Lalla on August 03, 2012, 04:14:22 PM
I've found some formulas (maybe...^^) useful to implement in mdb 3d...

T(x,y)=(x+a,y+b) - traslational simmetry

(http://img688.imageshack.us/img688/6585/sts134aug032012155001.jpg) (http://imageshack.us/photo/my-images/688/sts134aug032012155001.jpg/) - rotational simmetry

Uploaded with ImageShack.us (http://imageshack.us)

S(x,y)=(-x,y) - reflection simmetry

T(x,y)=(x+1,y+2)
(http://img822.imageshack.us/img822/7230/sts134aug032012160802.jpg) (http://imageshack.us/photo/my-images/822/sts134aug032012160802.jpg/)

Uploaded with ImageShack.us (http://imageshack.us)

(http://img515.imageshack.us/img515/8918/sts134aug032012161003.jpg) (http://imageshack.us/photo/my-images/515/sts134aug032012161003.jpg/) - conjugate formula

Uploaded with ImageShack.us (http://imageshack.us)





Title: Re: Some useful formulas to implement on new mdb 3d versions?
Post by: DarkBeam on August 03, 2012, 05:50:17 PM
You clearly don't know what you are asking. They are all possible using existing formulas; translations, rotations, folds. They are already present in Mb, since years. Stop asking what it's already in there. Thanks.


Title: Re: Some useful formulas to implement on new mdb 3d versions?
Post by: Lalla on August 03, 2012, 06:29:16 PM
You clearly don't know what you are asking. They are all possible using existing formulas; translations, rotations, folds. They are already present in Mb, since years. Stop asking what it's already in there. Thanks.

Ok, sorry...I don't know this...thank to explain me...


Title: Re: Some useful formulas to implement on new mdb 3d versions?
Post by: Kali on August 04, 2012, 10:25:43 AM
You clearly don't know what you are asking. They are all possible using existing formulas; translations, rotations, folds. They are already present in Mb, since years. Stop asking what it's already in there. Thanks.

That was a bit rude... having a bad day, Luca?   ;D


Title: Re: Some useful formulas to implement on new mdb 3d versions?
Post by: DarkBeam on August 04, 2012, 10:49:07 AM
Probably a low-newbie-tolerance day... ^-^


Title: Re: Some useful formulas to implement on new mdb 3d versions?
Post by: Alef on August 05, 2012, 03:19:21 PM
She looks being from your country;)

I would stand more for this (a bitt chaotic pattern):
https://sites.google.com/site/3dfractals/baguabox (https://sites.google.com/site/3dfractals/baguabox)

And a bitt less so for this (becouse it is brot):
https://sites.google.com/site/3dfractals/discussion (https://sites.google.com/site/3dfractals/discussion)


Title: Re: Some useful formulas to implement on new mdb 3d versions?
Post by: cKleinhuis on August 06, 2012, 10:22:57 AM
behave!, seems to be settled!


Title: Re: Some useful formulas to implement on new mdb 3d versions?
Post by: taurus on August 06, 2012, 09:16:34 PM
dunno if darkbeam will still listen to me after my latest verbal attack, but i will give it a try.  ;D
i kearned lately, that m3d and mandelbulber have different implementations of plane rotation ( _Rotate ). this makes negscale rotboxes completely incompatible and different looking in theese two programs (not only with identical values) and causes m3d rotboxes look much more dense and less subtle, than in bulber.
so i suggest to implement an additional marczak (buddhi) like rotation, to make some rotboxes comparable and/or portable.
i can't say much about background, but as far as i can tell the mandelbox script of fragmentarium rotates like mandelbulber, as my mandelbulber rotboxes look very similar to those in fragmentarium, at least in lower (single precision) zooms.
i'd be very pleased, if you can make that and it would bring a whole new fractal-type to m3d (trust me, it is that different!)  :dink:


Title: Re: Some useful formulas to implement on new mdb 3d versions?
Post by: DarkBeam on August 07, 2012, 04:19:19 PM
For Asdam, I looked at your formula, it brings some discontinuity - remove that and I will think of an implementation (not do, just think! ;D )

Taurus; Please report the code of Buddhi related to rotation here, so I can do a comparation. By the way, rotation is made using a matrix currently (precalculated, so can't do big manipulations), so I don't think it can be a lot different? Ever tried with _RotateBack that goes in the opposite sense? :hmh:

dunno if darkbeam will still listen to me after my latest verbal attack; what attack :hmh:

 ;D


Title: Re: Some useful formulas to implement on new mdb 3d versions?
Post by: taurus on August 07, 2012, 11:02:13 PM
what attack :hmh:

 :dink:


Title: Re: Some useful formulas to implement on new mdb 3d versions?
Post by: taurus on August 09, 2012, 02:57:07 PM
i'd be very pleased, if you can make that and it would bring a whole new fractal-type to m3d (trust me, it is that different!)  :dink:
for the sake of completeness i have to admit, that this claim is wrong, because of a silly mistake i made while porting.  :embarrass: they are different, but not that different. i still can't say how the differences are at deeper zooms (not so easy to go to the same spot in two different programs), but in larger scales they are similar.


Title: Re: Some useful formulas to implement on new mdb 3d versions?
Post by: Alef on August 09, 2012, 04:51:34 PM
For Asdam, I looked at your formula, it brings some discontinuity - remove that and I will think of an implementation (not do, just think! ;D )
I 'm thinking, that modificated spherefold at certain values could create discontinuaties (mess). Abox is conditional formulas, but are pretty smooth, but alsou depends on bailoy value.


Title: Re: Some useful formulas to implement on new mdb 3d versions?
Post by: Alef on August 10, 2012, 04:31:59 PM
For Asdam, I looked at your formula, it brings some discontinuity - remove that and I will think of an implementation (not do, just think! ;D )

Here I changed spherefold to different one, so now it is much less chaotic in messy areas. With abs function I kept possibility of negative scale Min radius. (Just noticed, formula can work without any spherefold, like when min radius =0)  I think, even smoother would get boring;) This were pretty raytracing resolution stable, moreso than my abox implementation;), but spherefold radius < 1 created mess in some areas.

Code:
Baguabox (quaternion) {

// Mandelbox alternative.
// Based on work of TGlad, Traffasel, Kali, M Benesi and LucaGen.
// By Edgar Malinovsky 25.07.2012.
// You may redistribute this algorithm, modify, derivate or use comercialy as you wish as long as you atribute proper credits.
// 10.08.2012 + smoother spherefold.

parameter real bailout;
parameter quaternion julia;
quaternion C;
real zx, zy, zz, temp, modulus, radius;
parameter real add, Min_R, Scale, lenght;
parameter int settype;


void init(void)
 {
     if (settype=="Julia Set")
    {
z = pixel;
C = julia;
    }
    else
    {
z= 0;
C= pixel;
    }

}

void loop(void)
{
zx=real(z);
zy=imag(z);
zz=part_j(z);


 //Folding by pow 8 modulus having unit circle shaped as octagon pillow.
modulus =((zx)^8 + (zy)^8+ (zz)^8)^0.125 ;

if (modulus != 0)
{
if (zx > lenght)
{
zx=-zx/modulus -add;
}
else if (zx < -lenght)
{
zx=-zx/modulus +add;
}

if (zy > lenght)
{
zy=-zy/modulus -add;
}
else if (zy < -lenght)
{
zy=-zy/modulus +add;
}

if (zz > lenght)
{
zz=-zz/modulus -add;
}
else if (zz < -lenght)
{
zz=-zz/modulus +add;
}
}

//spherefold. Similar to TGlads original, but allows negative radius.

radius =sqr(zx) + sqr(zy) + sqr(zz) ;

if (radius < abs(Min_R)  )
{
temp = Scale/Min_R;
}
else
{
temp = Scale;
}

//scaling and generating z value.

z = quaternion(zx, zy, zz, 0)* temp + C;
}
bool bailout(void)
{
return(  |z| < bailout );
}
void description(void)
{
this.title = "Baguabox";

bailout.caption = "Bailout Value";
bailout.default = 15.0;
bailout.min = 0.5;
bailout.hint = "Larger number increases fractal";

    settype.caption = "Set type";
    settype.enum = "Mandelbrot Set\nJulia Set";
    settype.default = 0;

separator.label1.caption  = "Shape depends on folding parameters and bailout.";
  add.caption = "Add value";
add.default = 0.1;

lenght.caption = "Lenght";
lenght.default = 2.0;

Min_R.caption = "Radius";
Min_R.default = 0.5;

Scale.caption = "Scale";
Scale.default = 1.5;

    julia.caption = "Julia Parameter";
    julia.default = (0.35,-0.35,2.0,0);
    julia.hint = "4th value is not used";
    julia.visible = (settype=="Julia Set");

}
}


Here is before and after, throught different colours:
(https://sites.google.com/site/3dfractals/baguabox/a_Baguabox_8.jpg)
(https://sites.google.com/site/3dfractals/baguabox/Baguabox_1_newspherefold_800.jpg)

This was generated using standart abox parameters, lenght =1, scale =2, Min radius=0.5. Now there are no gap.
(https://sites.google.com/site/3dfractals/baguabox/Baguabox_sec_2.jpg)
(https://sites.google.com/site/3dfractals/baguabox/Baguaboks_standart_param_newspherefold_800.jpg)

Far outside videscreen got much less mess:
(https://sites.google.com/site/3dfractals/baguabox/A_Baguabox_far_out.jpg)
(https://sites.google.com/site/3dfractals/baguabox/Baguabox_far_out_newspherefold_800.jpg)

I recomend to look on this coz it should be easy to use like abox, have right amount of changable variables (IMHO 4, 5 variables would be golden mean between enought possibilities and not burdening users too much), and is pretty different from abox versions. (Actaualy these were cornerstones for this formula.) And unexpectedly cool julias.
But of corse it is time and effor consuming, much more so than basic UF compiler ::)


Title: Re: Some useful formulas to implement on new mdb 3d versions?
Post by: Alef on August 10, 2012, 04:40:36 PM
I kind of like this brot, becouse it have sexy shape at power 2
(http://www.ljplus.ru/img4/a/s/asdam/IMAGE3_Mbrot_half_11.jpg)

And with in power 4 it looks like fractal called breeder;)
(http://www.ljplus.ru/img4/a/s/asdam/3_480_Slono_tesseract_wiev.jpg)

Throught the stretching in higher powers could be becous of algebraic mistakes. Throught of corse it is much less usefull.


Title: Re: Some useful formulas to implement on new mdb 3d versions?
Post by: Alef on August 15, 2012, 09:26:39 PM
Example of julia set of baguabox. Very smooth and many surfaces:

(https://sites.google.com/site/3dfractals/baguabox/a_Baguabox_new_julia_640.jpg)


Title: Re: Some useful formulas to implement on new mdb 3d versions?
Post by: Alef on August 26, 2012, 04:21:18 PM
Just couldn't not to share this julia set of almoust boolean or difs figures, IMHO pretty interesting feature.

(https://sites.google.com/site/3dfractals/baguabox/Baguabox_deep_julia_2_500.jpg)

There seems no discontinuities left, choped features are inherited and Chaos Pro often fails with too thin objects, feature I noticed with 'normal' brots and DEless fractals when increasing max iterations to 100 (there is no raystep multiplier to decrease).