Fractal Fr0st 1.4 released

May 14, 2011

I’m glad to announce that the latest version of Fr0st has just been released!

Get Fractal Fr0st 1.4

A lot of work happened behind the scenes in this release. Stuff got cleaned out and fixed. For the next version, I’ll be focused on adding more features and improving the existing GUI elements. Anyway, here’s the changelog, listing some of the bigger items:

GUI:
-Variation preview now has layers of different depths, to better show off what each xform is actually doing.
-Highlight triangle corners when hovering over them with mouse.
-Small preview now uses multiple threads on systems with more than 2 cores.

Bugfixes:
-Allow unicode paths for favorite scripts.
-Fixed several bugs that occurred when manipulating flames with non-black backgrounds.
-Small alpha values in palette produced by smooth interpolation (due to rounding errors) are now ignored.
-Fixed bug where some error messages were being cut short.
-Fixed bug where starting a script while the canvas was being manipulated led to an inconsistent program state.


Fractal Fr0st 1.3 released

December 22, 2010

I’m happy to announce that the latest version of Fractal Fr0st is ready for download!

Get Fractal Fr0st 1.3

New in this version:

GUI:
-Added gradient browser, which is able to load .ugr, .map, .xml and .flame files.
-Preview renders are now cached, so the same images aren’t rendered over and over again.
-Added anim tab, where flame time and related attributes can be set. Also added a script to create interpolated animation sequences using those attributes.
-Increased size of small preview to better fill the available space.

Bugfixes:
-Fixed a bug that made it impossible to change some of the configuration settings.
-Added space requirement of output image to memory calculation in render dialog.
-Installer now displays the correct version.
-Various small fixes.

As usual, I appreciate all feedback, bug reports, constructive criticism, and link love.


New release on its way

November 21, 2010

I’m preparing the 1.3 release of Fr0st in what little free time I have these days, so it should be out shortly. I haven’t been able to look at the several flam4 related bugs that were reported recently, for lack of a CUDA capable graphics card (stuck with just a low-budget laptop right now). Before the end of the year I will be getting a new box, though, so you can count on all of that being sorted out by the subsequent release (currently scheduled for early 2011).

In the meantime, I hope you’ll enjoy the new features coming out, such as smart image caching, which makes the process of designing fractals a lot faster, specially when going back and forth between different versions of a flame. There’s also animation support coming, by wrapping the flam3 calls in an easy to use script.


Fractal Fr0st 1.2 released

September 14, 2010

After a long time of waiting, I’m proud to announce the release of fractal fr0st 1.2! Over the last 6 months, I got cut open to have my appendix extracted, moved to another continent and studied like mad to get admitted to university. In that tumult, Fr0st got relegated to the back burner, even though I really wanted it to be otherwise. But the wait is over, and I’ve resumed active development again, so expect to see another release in only 2-3 months time!

Get Fractal Fr0st 1.2

So what’s new in this version?

GUI:
-Triangles on canvas are now translucent.
-Disable GUI interaction while a script is running.
-Added list of recent flames and scripts to respective menus.
-Added list of favorite scripts with hotkeys for quick execution.

Installation:
-Added script for Ubuntu that automatically installs all dependencies.

Bugfixes:
-Avoid crash when rendering on 64-bit Unix systems.
-Rotate buttons in xform tab now take into account world pivot.
-Xform tab now updates correctly when selecting post transforms.
-Recovery after a crash now brings Fr0st back to its exact previous state, including full undo/redo history.
-Script input dialog now checks for invalid input and raises an error.
-Render dialog no longer displays flame names in status bar when rendering, as this could lead to overlapping text on some systems.
-Many, many more…

As usual, I appreciate all feedback, bug reports, constructive criticism, and link love.


1K downloads

July 30, 2010

Fr0st passed 1000 downloads today! I know it’s just a number, but I can’t help feeling a bit excited about it, a bit proud. Thanks for trying out Fr0st and thanks for sticking with it, even if it still has some bugs. In a month or so I’ll be picking up development more actively again — the 1.2 release is bound to follow soon after.


Fractal Fr0st 1.1 Released

April 20, 2010

Fr0st 1.1 has been released! Get the dowload files here:

https://launchpad.net/fr0st/+download

There are lots of changes and improvements in this version:

GUI
-Added vibrancy to adjust panel
-Xform editor now handles post and final xforms much more intuitively.
-Hide irrelevant tabs when post or final xform is selected
-Preview and render dialogs now show rendering info in their title bars.
-Opening files is now faster.
-Eliminated several sources of slowdown when handling very large files.
-Don’t render thumbnails when opening large files.
-Quality of jpg renders can now be configured. Default is 95.
-Can now paste multiple flames at once.
-If a script causes an error, a helpful dialog with all details is shown.
-If fr0st crashes or the computer loses power, unsaved changes are recovered next time it is opened.

Flam3 integration:
-Rendering now 5-10% faster due to better integration with the GUI.
-Default buffer size is now 64-bit, making for another 10% speed improvement. Also improves performance of thumbnail and preview images.
-Images with non-black backgrounds now render correctly on windows.

Flam4 integration:
-Can now render transparent backgrounds.
-Fixed bug where black image was returned when changing certain parameters.

Installation:
-No longer have to compile extension module when installing on linux.

Various bugfixes:
-Fixed possible error when editing flame names.
-Fixed possible error when dragging flames around.
-Check for invalid paths (i.e. malformed or pointing to a read-only dir), and handle them correctly.
-Many, many more.

If you need help or have any questions, you can stop by the mailing list:

http://groups.google.com/group/fr0st

or go to the #fr0st-users irc channel at freenode.net.

Feedback and bug reports are very much appreciated.


Why you should prefer 64-bit buffers

April 19, 2010

In the next release of fr0st, it will use 64-bit buffers when rendering previews and thumbnails. This has increased rendering speed by about 10%.

Where does this speedup come from? It’s pretty simple: All math for the iterations is done in 64-bit no matter what. Therefore, when using a 32-bit buffer, flam3 has to cast from double to float and check for overflow at each iteration. In layman’s terms, you always calculate the fractal very precisely, but if you use a smaller buffer, you need to ’round’ the numbers to fit them into the available space, which makes the rendering process slower and less accurate.

There are some boundary conditions in which the compounded rounding error caused by using the smaller buffer creates a slight shift in color when changing opacity. This can be very visible when creating animations.

The downside is of course double memory usage. But I still recommend to use a 64-bit buffer for rendering whenever possible. It’s worth sacrificing a bit of oversample to do so (as long as you never reduce it below 2!). If you’re rendering huge images where memory is at a premium, you might be forced to reduce the buffer to 32-bit, but I would only do that if the alternative was rendering in slices.


Using Fr0st with Electric Sheep

December 28, 2009

Right now, it’s not easy to use fr0st for generating sheep that are accepted by the electric sheep. Fr0st is built on flam3 2.8 (the latest version), while electric sheep is still on 2.7. This means there are incompatibilities in the file format, invalid variations, etc.

I’ve been working on a script that addresses this problem. It’s still a beta version, so please don’t trust its output blindly, and let me know of any problems. You can get the script here:

http://dl.dropbox.com/u/2173295/fr0st/electricsheep_export.py

This script will take the currently selected flame, attempt to convert it, and save it to a separate file.


New Beta Released!

December 28, 2009

You know what to do. Get it here:

https://launchpad.net/fr0st/+download


Fr0st tips & tricks

December 9, 2009

I’ve aimed to make the fr0st interface as discoverable as possible. There are a couple of features hidden away, however, so I figured it’s important to write them down before they get lost in the sands of time, to be dug up by some lucky soul excavating through the source code.


Mouse Wheel + Ctrl and/or Alt

This sounds harder than it is, so let me explain:

Hold down ctrl while the mouse is on top of any textbox, and you can change its value by scrolling with the mouse wheel. Instead of ctrl, you can also hold ctrl+alt or just alt to get slower scaling. This works on top of virtually any textbox, including variations, chaos, color, weight, etc.


Preview Image

The above method also works on top of the preview image, where it changes the scale of the fractal. You should also try dragging the preview around with the mouse.


Double-Clicking Variations

Double clicking on the variation name will make the variation jump to 1 if it was at 0, and to 0 otherwise. This should be pretty familiar to those coming from Apophysis.


Keyboard Shortcuts

All keyboard shortcuts can be discovered just by looking at the menu items. Here are some of my favorites:

-F8 runs a script; F9 interrupts it
-Ctrl-z undoes the last change, while ctrl-shift-z undoes all changes. Same with y for redo.
-Ctrl-p opens the preview, ctrl-r the renderer and ctrl-e the script editor.


Copy & Paste

with ctrl-c and ctrl-v you can copy and paste fractals to and from fr0st into other programs such as text editors and other fractal programs.


Does any of this help you make better fractals? Of course not, but it does free up your mind to focus on the creation of art instead of struggling with the program. A good interface is one that fades into the background, turning almost invisible. I’m not sure we have achieved that quite yet, but we’re heading there.

Have fun with these tricks!