Title: Mandelbulber v2 - 2.03 Post by: Buddhi on February 09, 2015, 06:35:46 PM Mandelbulber v2 2.03
Free download (executables for win32 and win64 and multiplatform source): http://sourceforge.net/projects/mandelbulber/ Website: http://www.mandelbulber.com/ With big help from Sebastian Jennen I have finished new release of Mandelbulber. This time there was focus on implementation of flight animation engine. Now it's much more feature rich than in Mandelbulber 1.21. You will see table with animation, where you can add and animate any parameter. Adding of parameters can be done by right click on chosen parameter edit field. There is possible to edit animation frames in table and to do basic interpolation of values between frames. For every frame can be displayed preview, which helps to find desired frame. If built-in table is not enough for you, then try to edit parameter file directly in external editor. Animation frames are stored in CSV format. What is new? - Added recording and rendering of flight animation. All frames are displayed in the table with previews. There is possible to edit values in the table and interpolate them in selected range of frames All frames can be edited in any spreadsheet editor. CSV format is used in settings file to store animation frames There is possible to add any parameter to animation (context menu for every parameter) Added keyboard shortcuts for recording (pause, strafe, roll) Added player for animation (plays directly from sequence of jpg files) - added win64 version - added user defined toolbar. To add new preset it's enough to save settings to $HOME/.mandelbulber/toolbar folder - added quit confirmation dialog - added multiple language support (EN, PL, DE) - reduced all margins and spacings in UI - added automatic tabify of docks when application is started first time - in file selection dialog the preview is rendered much faster - added missing mandelbulber.png icon - more detailed recording of errors in .mandelbulber_log.txt - corrected tab order in UI - fixed bug: in install script - fixed bug: there was double slash in paths for files - fixed bug: after application quit rendering was not terminated What will be in mandelbulber 2.04? - keyframe editor to do interpolated animations - and many other improvements... As always every feedback is appreciated! SVN repository: http://mandelbulber2.googlecode.com/svn/trunk/ This repository is available from Google Code: http://code.google.com/p/mandelbulber2/ Title: Re: Mandelbulber v2 - 2.03 Post by: quaz0r on February 10, 2015, 09:13:38 AM :D
Title: Re: Mandelbulber v2 - 2.03 Post by: cKleinhuis on February 10, 2015, 12:00:32 PM Super nice i hope to find some time importing some formulas to it
Title: Re: Mandelbulber v2 - 2.03 Post by: youhn on February 10, 2015, 02:43:05 PM I've already added some to my local copy of v2.02 ;
Code: void IdesIteration(CVector3 &z) I know what to edit in allmost all other files to make this work. The only errors I get is on missing UI files. As a workaround I copy them manually to /usr/share/mandelbulber2/qt_data with the file fractal_benesi.ui as template. Now I notice one of the Buffalo fractal is not in there :o This one should also be included (with absolute operation on all x,y,z variables) : Code: void BuffaloIteration3(CVector3 &z) Hm, perhaps this subforum is not the most correct location for this post ... :suspious: Title: Re: Mandelbulber v2 - 2.03 Post by: lukesleftleg on February 10, 2015, 04:45:26 PM Very, very nice.
Thank you Buddhi. ;D Hmm, I think I can feel another animation coming on again soon. Title: Re: Mandelbulber v2 - 2.03 Post by: Snicker02 on February 10, 2015, 05:31:24 PM http://youtu.be/1qn36EOihtQ O0
Title: Re: Mandelbulber v2 - 2.03 Post by: Buddhi on February 10, 2015, 06:05:04 PM Super nice i hope to find some time importing some formulas to it I've already added some to my local copy of v2.02 ; If you have some nice formulas to implement please contact with me or youhn. I will work with youhn to code it into Mandelbulber. Title: Re: Mandelbulber v2 - 2.03 Post by: mclarekin on February 11, 2015, 12:25:54 AM Thank you guys for the latest version
I often use manipulations of existing formulas, if at any time you find one interesting I can supply the code :) Title: Re: Mandelbulber v2 - 2.03 Post by: DarkBeam on February 13, 2015, 06:48:54 PM If you have some nice formulas to implement please contact with me or youhn. I will work with youhn to code it into Mandelbulber. Don't remember if I asked it already :embarrass: Code: Menger4IFS(x,y,z,w){Title: Re: Mandelbulber v2 - 2.03 Post by: DarkBeam on February 13, 2015, 06:52:44 PM ABoxModKali (dunno if it's in already)
Code: x = X_add - abs(x) My worldwide famous AboxMod1 ;) Inspired from a 2D formula proposed by Kali at the forums here; http://www.fractalforums.com/new-theories-and-research/kaliset-plus-boxfold-nice-new-2d-fractal/msg33670/#new Code: Scale = Scale + Scale_vary*(abs(Scale)-1) Title: Re: Mandelbulber v2 - 2.03 Post by: DarkBeam on February 13, 2015, 07:05:39 PM Riemann fractal 1 (old ;) )
http://www.fractalforums.com/theory/alternate-co-ordinate-systems/msg11688/#msg11688 One of the many Benesi burning ships: http://www.fractalforums.com/the-3d-mandelbulb/here-are-the-first-true-3d-mandelbrot-images/ :) Title: Re: Mandelbulber v2 - 2.03 Post by: DarkBeam on February 13, 2015, 08:29:48 PM As primitive shapes are implemented...
Those friends maybe added http://www.fractalforums.com/new-theories-and-research/not-fractal-but-funny-trefoil-knot-routine/ Title: Re: Mandelbulber v2 - 2.03 Post by: youhn on February 13, 2015, 09:26:24 PM :D
:thanks2: I'll see what I get working in Mandelbulber. Title: Re: Mandelbulber v2 - 2.03 Post by: DarkBeam on February 13, 2015, 11:43:11 PM No problems just a tiny taste of what can be done :D
Title: Re: Mandelbulber v2 - 2.03 Post by: DarkBeam on March 01, 2015, 04:30:13 PM Here you find a nice little collection of isosurfaces
They can be fun to be used as baseshapes, if trimmed to a sphere See the 5th document ;) http://cvit.iiit.ac.in/projects/rayTracing/ Many were implemented in mb3d using my own simplified method :) Title: Re: Mandelbulber v2 - 2.03 Post by: DarkBeam on March 02, 2015, 06:11:17 PM Code: void BuffaloIteration(CVector3 &z) I am experimenting this more flexible formula in MB3D with interesting results. :) Where j is an user defined integer value 0 to 63. (this means this formula has 64 variants!!! O0 ) In short words, a flexible combination of Buffalo, Burning Ship, normal and a sort of "folded C addition" (variant just invented ;) but promising) Of course the code above is untested (a pseudocode) :embarrass: *deleted see pages -> -> * If I understood right some youhn formulas don't even add constants to some axis? This would further enlarge the number of possible variants... :D Test imagery (http://nocache-nocookies.digitalgott.com/gallery/17/4162_02_03_15_6_17_55.png) (http://nocache-nocookies.digitalgott.com/gallery/17/4162_02_03_15_6_40_55.png) (http://nocache-nocookies.digitalgott.com/gallery/17/4162_02_03_15_9_00_22.png) Title: Re: Mandelbulber v2 - 2.03 Post by: youhn on March 02, 2015, 07:18:58 PM Ah, what a beautiful mess you made of it. ;D Let's dive in.
First to clear up some confusion. The escape time formulas in Mandelbulber are actually only the main part, without the adding-c piece (because it's the same for about all formulas). Stripped (made simple) code looks like: Code: switch (fractal->formula) Are those images this power 2?? Looks a bit like a higher power bulb. So if I understand you're code, then jj 0 and 1 are what I already have. Then jj 2 adds c before folding (this is new for me) and else (for every jj up to 63 ... ?) some rather strange magic happens (also new for me). That second image sure looks nice, so I'll give it a try. Title: Re: Mandelbulber v2 - 2.03 Post by: DarkBeam on March 02, 2015, 08:02:20 PM Well lol, j contains packed the variants of the formula ;)
to unpack use binary numbers j = 01 11 00 So, j and 3 isolates last 2 bits :) So j and 3 = 00, the variant used for X will be the first Shr j,2 rotates bits... j = 01 11, and new j = 11, the variant used for Y will be the 4th Shr j,2 rotates bits... j = 01, and new j = 01, the variant used for Z will be the 2nd Clear I hope ;D ;D Oh thos images are j-sets :) Title: Re: Mandelbulber v2 - 2.03 Post by: DarkBeam on March 02, 2015, 08:16:20 PM It will be not easy to replicate the results in mandelbulber if the c addition is done afterwards... :hmh: dunno...
In my formulas there is no c addition afterwards, so the buffalo variant is out of reach :dink: Title: Re: Mandelbulber v2 - 2.03 Post by: youhn on March 02, 2015, 08:32:19 PM I think you'r jj == 1 condition is a buffalo. Number 7 in the numbering from https://code.google.com/p/mandelbulber2/wiki/BuffaloFractals
In Mandelbulber the conditions should be in both the main formula and the adding-c part, should be doable. Title: Re: Mandelbulber v2 - 2.03 Post by: DarkBeam on March 02, 2015, 09:13:45 PM Also I can tell you, a more good looking option is to not change the sign of z;
void BuffaloIteration(CVector3 &z) { double x2 = z.x * z.x; double y2 = z.y * z.y; double z2 = z.z * z.z; double temp = 1.0 - z2 / (x2 + y2); double newx = (x2 - y2) * temp; double newy = 2.0 * z.x * z.y * temp; double newz = +2.0 * z.z * sqrt(x2 + y2); z.x = AddCCondit(newx, c.x, j); shr (j,2); z.y = AddCCondit(newy, c.y, j); shr (j,2); z.z = AddCCondit(newz, c.z, j); } :) More images coming Title: Re: Mandelbulber v2 - 2.03 Post by: DarkBeam on March 02, 2015, 09:20:39 PM (http://i.imgur.com/WeHv3I0.jpg)
A variation with positive z, looks good :dink:, while the negative version is awful :sad1: Title: Re: Mandelbulber v2 - 2.03 Post by: youhn on March 02, 2015, 09:25:51 PM Try slicing them through either the XY or XZ plane to see what 2D fractals are hidden. :nerd:
Title: Re: Mandelbulber v2 - 2.03 Post by: knighty on March 02, 2015, 09:29:00 PM :thumbsup1:
Title: Re: Mandelbulber v2 - 2.03 Post by: cKleinhuis on March 02, 2015, 09:30:38 PM @darkbeam
isnt this not just taking the absolute value of result of any combination of the 3 axis x/y/z ? i need to try it out on shadertoy ;) Title: Re: Mandelbulber v2 - 2.03 Post by: DarkBeam on March 02, 2015, 10:24:23 PM @darkbeam Eh, no :) read more in detail! :) cheers Knighty!isnt this not just taking the absolute value of result of any combination of the 3 axis x/y/z ? i need to try it out on shadertoy ;) And you(hn) must wait for xsections ... ;) Title: Re: Mandelbulber v2 - 2.03 Post by: DarkBeam on March 03, 2015, 04:49:21 PM ... okay ;)
(http://i.imgur.com/fGjd0Dw.jpg) You can see that abs(x+cx) doesn't give the Buffalo fractal, but Celtic Mandelbrot; it's the image in the top. EDIT nooo... :D the correct image is that on the bottom! But I don't remember the right number to put :D (http://fc03.deviantart.net/fs70/i/2015/029/1/b/bufallo_fractal_by_jeroensnake-d8fv9ib.jpg) Title: Re: Mandelbulber v2 - 2.03 Post by: DarkBeam on March 03, 2015, 06:12:30 PM The confusion came from the fact that my formula has a different setting, that makes tricky to find variations;
I really wanted to make Buffalo variation the default one, so I assigned the number zero to it! But I just forgot :fiery: Oh well In my opinion the very best buffalo is the one that multiplies z and y by a negative number (not positive) It's not eassy to tune perfectly a variation because many variations are available :snore: By the way the only one that is a Buffalo in xy and xz section is something like { double x2 = z.x * z.x; double y2 = z.y * z.y; double z2 = z.z * z.z; double temp = 1.0 - z2 / (x2 + y2); double newx = (x2 - y2) * temp; double newy = -2.0 * z.x * z.y * temp; double newz = -2.0 * z.z * sqrt(x2 + y2); z.x = AddCCondit(newx, c.x, j); shr (j,2); z.y = AddCCondit(newy, c.y, j); shr (j,2); z.z = AddCCondit(newz, c.z, j); } When jj = 010101b = 21d using my convention This is not true for just any variation, some look great only when all variables are positive :alien: (edit!!! Lied - this particular variant doesn't care of signs :sad1: - all good) The pretty pic (just for Christian :D ) ; (http://nocache-nocookies.digitalgott.com/gallery/17/4162_03_03_15_6_11_03.png) MB3D parameter Mandelbulb3Dv18{ g....EQ0...l7...w....2....UVDgdmf5a/.fu5IBKCVL8E7uiCIUxpqz1kOUC6fnLxzI8PXeAfiizD ........................................kz1........A./..................y.2...wD ...Uz6....E11.../M.0/......f0...W/....E3......rlZbMAujoD/......./KX.1dkpXm1.OaNa y.EnAnYD12../.EL9lhTo6Iqzq3KcOUSpUwDdLc0Da3ZYz1...........U0.....y1...sD...../.. .z1...sD4OvPjHwy/xfzA/eyCuKFz24laqdQNOYjlTPN8Z2XvwP0qHUwYplBz03kFAEBjJoDbj/mmVqO .xXP6VXvBtsCzcNsRZkzu5oDU.....2vI.............sD.6....sD..G.0................... .............oAnAt1...sD....z...........................................w....k1. .....Ksulz1.......kz.QHgT1.U..6......U5...EQ....m....c3...U.....L....I1.....SJ52 wI0U.qFG90kb2zz3....j.....6.pc..zXCc..kvrEtMc7xD6ocyFE0ujz1..........2.28.kFrA0. .Ub96aAIVz9.1se7Umvxz0........../EU0.wzzz1...........s/...................E.2c.. zzzz.............0...................2./8.kzzzD............8.................... /EU0.wzzz1...................................chQZ.EB85YvqPGeFv0.pcQEbjVA6hB7.IXm /tiXv2YLy0EB85YveroSXkB.pcQESTJNYjFa.IXm/timodhQZ.EB85Yv/PbqmJ0.pcQEib7TO9L7.IXm /tSWydhQZ.EB85Yv..EsUa3feeWCNqGQIJ36wk8EwyLsUa3f................................ E....2..F2E.....I....M....EIp34NnEYM..pPrJaQ.sqNgJqQ........................0... ...................wz..........k..........A...................zD................ ................................................................................ ........................} {Titel: true buffalo} (ps I cheated with some effect to show those blue bands :D ) Title: Re: Mandelbulber v2 - 2.03 Post by: mclarekin on March 04, 2015, 08:51:32 AM Cool post chaps. I particularly like DarkBeams strategy to deal with variants, (opposed to having a unmanageable clutter of variant fractal files :sad1:)
Title: Re: Mandelbulber v2 - 2.03 Post by: youhn on March 04, 2015, 05:25:35 PM I think some checkboxes are more transparant and give a better overview, when given together with a short explanation what the option do:
(http://i.imgur.com/utSxlcx.png) Still have to add the magic inside Luca's AddCCondit routine to the Buffalo fractal in Mandelbulber. Title: Re: Mandelbulber v2 - 2.03 Post by: DarkBeam on March 04, 2015, 09:33:20 PM Can you add a combobox?
If you can... you are done ;) Choice 0: no abs Choice 1: cx + abs x 2: abs (x+cx) 3: fold(x,cx) Fold is the last transform in my source code :) Luca Ps You should implement this in the general power mandelbulb Higher powers should be great! Title: Re: Mandelbulber v2 - 2.03 Post by: youhn on March 04, 2015, 10:17:45 PM Still learning the inner workings of Mandelbulber from master Buddhi. Might be an idea to implement some general routines that can be used in any fractal calculation. For example placing mirrors for reflection ( see http://www.fractalforums.com/new-theories-and-research/mirror/ ). First have to understand the KIFS code, since I believe the mirrors are in there somewhere.
Adding comboboxes to all escape time 3D fractals would definitely add to the possibilities. We need more! ;D Title: Re: Mandelbulber v2 - 2.03 Post by: DarkBeam on March 04, 2015, 11:11:38 PM Still learning the inner workings of Mandelbulber from master Buddhi. Might be an idea to implement some general routines that can be used in any fractal calculation. For example placing mirrors for reflection ( see http://www.fractalforums.com/new-theories-and-research/mirror/ ). First have to understand the KIFS code, since I believe the mirrors are in there somewhere. It maybe an idea but don't mess up the interface too much ;)Adding comboboxes to all escape time 3D fractals would definitely add to the possibilities. We need more! ;D Title: Re: Mandelbulber v2 - 2.03 Post by: DarkBeam on March 04, 2015, 11:14:48 PM To do a normal mirror, btw, do this;
1 rotate3d(x,y,z) 2 x = a-b+abs(x+b) where a and b are user defined 3 unrotate3d(x,y,z) Unrotate is the transposed rotate matrix you used at first. In reality you need 2 angles of rotation not both 3 Title: Re: Mandelbulber v2 - 2.03 Post by: mclarekin on March 05, 2015, 02:10:10 AM yes youhn the checkbox interface is what is needed
Here are some other variants to consider for each formula: be able to enter individual C constant multipliers ie c.x c.y c.z Checkboxes for the inclusion of multiple instances of box fold, spherical fold and rotation and scaling for each formula and be able to place them in different positions within the iteration loop.(3D and 4D?) (these 3D translations can be used on 4D formulas) Be able to enter separate alpha beta gamma for each instance of 3D rotation included each axis in box fold can have individual upper and lower foldingLimits and upper and lower foldingValues (12 parameters to vary) at then there is the enable rotation of individual positive and negative planes in Buddhi's mandelbox (SLOW) hybrids made from various formula varients will be incredibly easy. I guess consideration of implementing any of the above is dependent on how useful the variant would be. Alternatively Mandelbulber could just add an "include a c++ custom formula" feature, like the one used for openCL, with initial_conditions and iteration files and people like me can have a lot of frustration and fun learning stuff. Title: Re: Mandelbulber v2 - 2.03 Post by: DarkBeam on March 06, 2015, 06:28:05 PM I am VERY sorry, I wrote the wrong formula!!! :( This is the correct one;
Code: double AddCCondit(double &xx, double &cc, integer j) The correct fold(x,c) shows beautiful forms, will post if someone asks Mandelbrot set: http://www.fractalforums.com/index.php?action=gallery;sa=view;id=17133 Title: Re: Mandelbulber v2 - 2.03 Post by: mclarekin on April 18, 2015, 04:05:35 AM @ Buddhi, for the wish list
- Be able to attach lights to primitive group, such that they can move with the group - Be able to save primitive group, and then import into another fractal image Title: Re: Mandelbulber v2 - 2.03 Post by: zebastian on April 19, 2015, 11:20:39 AM @ Buddhi, for the wish list Your rocket looks good, I did not think it was rendered with mandelbulber on first sight. ;D- Be able to attach lights to primitive group, such that they can move with the group - Be able to save primitive group, and then import into another fractal image Grouping is a good idea. Maybe we can think about an importer for OBJ files, so you can model complex forms in Blender or some other 3d Modeling software. Really handy modeling functionality is obviously a complex theme, so I guess we are probably better off keeping this in an external program. Though performance and detail will be lost, if simple spheres, cones, ... get polygonized. Title: Re: Mandelbulber v2 - 2.03 Post by: mclarekin on April 19, 2015, 10:20:08 PM Importing .OBJ would be cool. For now Im happy with the 1950's sci-fi look (life was so much simpler then ;D) |