Thursday, August 17, 2006

First post, and first tip

Hello all,

Thanks for the invitation to this blog and I hope my contributions will be useful! To be honest, I almost never do any fractalling anymore. Back in, say, 1993, I first learned about fractals and got my first computer. Naturally I decided to write my own programs and that was great, trying to recreate images from fractal books borrowed from the local library. Images that took the better part of the day, or sometimes of the week, to render on my tiny 286 computer.

Somehow, at some point things changed and I've now become more interested in writing fractal software, than actually using it to create fractals. Which is good for the Ultra Fractal users out there, of course. I like to think that I help people to create better fractals than I could ever have made.

This does however mean that I won't have much to share about actual fractal creation. Therefore I've decided to talk a bit about Ultra Fractal each time and share some tips. I do have some ideas already -- for example, I'd like to shed some more light on the animation features in version 4 and the cool things that you can do with them -- but I'd very much welcome any comments. Please let me know what you'd like me to talk about!

Here is my first tip. I can imagine that you sometimes have a stand-alone browser window open in Ultra Fractal (use File > Browse to do this) and are looking through the zillion formulas in the public formula library trying to find something new and interesting. You know, reading the comments, looking at the preview, and suddenly you decide that you'd like to use this formula in a new, or even an existing fractal. So you open that fractal, and the only way to select the formula seems to be to click the Browse button on the Formula tab, which opens a new modal browser, and navigate to that formula again.

The tip is: You don't have to click the Browse button. You can just drag a formula from the stand-alone browser to the Formula tab and drop it onto the title of the currently selected formula. This also works on the Inside and Outside tabs, and on the Mapping tab, where you can drag a transformation into the list box. Cool, isn't it?


Blogger Keith said...

Didn't know that. Thanks for the tip.

I am a little disppointed that I haven't seen too many animations. Any thoughts on why? Or maybe I am not looking in the right places?

8/18/2006 1:31 AM

Blogger Panny said...

Tips are going to be one of my favorite parts of the blog! I didn't know about this feature, either, but rushed to try it out and it works:)
Thanks for posting!

8/18/2006 11:40 AM

Blogger Kerry Mitchell said...


I think there are several reasons why you haven't seen more animations: Making a decent animation requires many, many frames, probably requiring many, many hours/days/weeks for rendering. I did a couple that each took about a month 24/7 to render. Also, making an animation adds an extra dimension to the difficulty of creating a good fractal--zooming in on one area isn't generally very compelling, so one needs to come up with a storyboard as well as several interesting key frames. Then, there's the post-processing--making a decent animation for the web or for a DVD is not a trivial thing. So, there's a healthy learning curve for animations beyond that for making still images, which is itself quite significant, as we all know.

8/19/2006 12:43 AM

Blogger Philip Northover said...

True, Kerry. I'd only add that after you've made your movie, finding a place on the internet to host it properly is a challenge. I made an 8 minute fractal video that came to 187 megabytes. I put it on Google Video but they ran a compression on it which introduced so many artifacts and blurs that it was unwatchable. So I removed it from there. I imagine YouTube would be as bad.

8/19/2006 10:23 AM

Blogger Jock Cooper said...

I think Kerry summed it up well. Making an animation requires at least a few months. I have found it takes several passes (say a week or two each) just to get the 'storyboard' (as Kerry called it) finished. You just don't know how it will turn out until you actually render all the frames. So you render, then adjust the keyframes, and repeat. The final render will then take 5-6 weeks of 24x7 for one to two minutes of clip.

I host my own animations so I can control the quality--but most people are probably not willing to setup a site with enough bandwidth (about 350 gb / month) to do that. Google video and youtube really degrade it so as Philip said that is also a factor.

FWIW I do not use UF's fractal animation system, I still use my own software I wrote several years ago to build the animation frames. There are a few things about UFs system that bug me enough to stop me from using it; which is unfortunate because it is fairly more robust than mine.

8/19/2006 5:22 PM

Blogger Frederik Slijkerman said...

I haven't seen many animations as well. I do get e-mails from people who are really into fractal animations, but they seem not to be on the ultrafractal mailing list, for example. Properly viewing animations on the web is a problem as well.

Jock: Could you explain what could be improved in UF's animation system? I'd like to improve it but I haven't got a lot of feedback on it so far...

8/21/2006 6:32 AM

Blogger Jock Cooper said...

Here are a list of items I think would help:

1. each time I navigate to a frame in the time line it has to redraw it. It should cache these frames so that I can move around quickly to frames I have already seen. For 1 layer animations no big deal, but for more then it becomes very cumbersome.
1a. If you could precompute the key frames for this purpose it would be great.
1b. If you could 'hide' all but the key frames it could also be useful.
1c. Or if you could disable/reenable layers easily it would be very good. You could turn them off and work with the key frames more quickly. You can get a lot of work done on the 'flow of forms / camera movement' using only a single layer, then reenable everything when you are happy with that.
2. When it is rendering I think it should write the frames as they are rendered.. not all at once at the end. This feedback can be helpful if something looks bad in the render you want to find out ASAP. I use Thumbsplus to see my frames as they are rendered.
3. Render every nth frame (also render key frames only). If my animation is 3000 frames and I can render it in 600 frames, this allows me to get a feel for the flow of the forms in a shorter time. I guess this might be already possible just by changing the length.
4. Lastly and not as big a deal. If I could change one layer and have that auto propagate to the other layers that would also be nice. Not necessarily all other layers (eg one or more could be a texture only layer with different formula/location). If you could designate which layers are 'tied' together and receive the same formula/location parms that would work.
5. In the 'Exploring' box if you could show a point that indicates the existing parm value that would also be helpful.
5a. Even better: perhaps you could graph the parameter changes onto something like the 'Exploring' box. When you animate it is better not to have a parameter jumping back and forth at each key frame but instead going smoothly for longer periods. This would let you see how a parameter changes more visually.

Hope these all made sense, I realize this isn't necessarily the right forum for this but I figured other readers might be curious.

8/22/2006 9:41 PM

Blogger cruelanimal said...

Actually, I hope Orbit Trap is exactly the kind of place for such conversations.

Tim and I envisioned one function of this blog would be to bring together programmers, developers, formulae writers, and others with high math skills, so they could all collectively talk, troubleshoot, and iterate to the next level.

And please don't worry about walking the math walk and talking the tech talk. I think there are plenty of contributors and readers here who would relish following such threads and adding their own insights to such discussions.

8/23/2006 7:32 PM

Blogger Frederik Slijkerman said...

Hi Jock,

Thanks for sharing your thoughts!

(1) is a cool idea and something I'll have to investigate. I don't really understand what you mean with (1a) and (1b) though. (1c) is already possible, just hide the layers in the layers list that you aren't interested it and they'll be calculated with lower priority.

I agree with (2) and it's going to be in UF5.

(3) is indeed easily possible by changing the length of the animation in the Time Settings dialog. Because key positions are saved as precise time values, you can change the duration of the animation without introducing round-off errors here.

(4) is already on my wish list, but in the form of layer clones. You would be able to clone a layer to be able to use it elsewhere in the layers list. The cloned layer would use the same calculated data as the original layer, but with different gradient, mask, opacity, and merge mode options. Is that what you mean?

(5) has been requested more often and is going to be in UF5. (5a) is interesting as well, I'll think about that.

Just let me know if you have any more ideas!

8/24/2006 10:49 AM

Blogger Jock Cooper said...


by 'precompute' in 1a I mean if I could click each key frame in the animation and instantly see what it looks like. Currently I must wait for it to draw. If I could tell it to precompute the key frames (it would take a perhaps a few minutes per keyframe) then I could click them all and see instantly their look.

in 1b by hide the other frames I guess I just mean can it be easier to navigate from one key frame to the next. If I want to look at them in in sequence for example.

1c. I understand this, I think if you could just make shift-click on the visible button 'toggle' that would do the trick. So shift-click once makes all other layers invis, shift-click again makes them visible again.
Also, even with them rendering at lower priority it can still take too long for the one layer that is visible to draw. I like to have 8-12 layers in an animation, that really slows things down. If you could add a button on the toolbar that says 'render or not' invisible layers; I think that would be great.

#4 would almost do the trick. But can you allow the cloned layer to have different in/out coloring methods? Or better yet, like in OO programming let the clone inherit all settings but 'override' any it wants. That would really be sweet. This would be a big help even in still images. You could quickly explore image tweaks if you could change a single layer's formula parameters and have it affect several other layers. Currently you'd have to copy / paste the tweaked formula to all the other layers.

5a. I ask this because I often resort to entering the parm values that change from keyframe to keyframe into a spreadsheet, so I can see how they change over the course of the keyframe sequence. Maybe something like that (a table of value changes) would be great.

When you study the animation-in-progress, if it seems to be going back and forth too much, you have to look at the parameters to see how to fix it. For example: " P1 goes up in kframe2 and back down in kframe3.. I need to make it continue going up. Or P1 keeps going up but P3 going down pulls the forms backwards so it needs to stop or go up."

8/27/2006 11:20 AM


Post a Comment

<< Home