pygame is
Simple DirectMedia Layer is
Site Swing
Fractal Fr0st

Fractal Fr0st - 0.4

Vitor Bosshard (algorias)



Fr0st allows you to visualize the results of an iterated funcion system as it is rendered. This is a very early version of it, with lots of planned funcionality missing. The only controls so far are moving the mouse to change the location of the active transform and the left and right keys to switch between transforms. It's hard to explain in non-technical terms, just try it out. If you know how to use Apophysis, you can let your own flame be rendered by Frost.


-Fr0st can now save flame files, including batches for 
creating animations.

-large increase in rendering speed.

-Support for variations added.

-In the source version, any script can be run hassle free
 just by double clicking on it. To achieve this, the 
script must include "from runscript import *" at the top. 
Otherwise, the script to be run needs to be specified as a 
command line argument to fr0st.exe.

-fixed various bugs, including one which crashed the 
program on the ocurrence of very large coordinate values.

-When assigning to values the y axis is no longer 
inverted. Fr0st is still 100% compatible with .flame files

-Scripting mechanism was significantly simplified, it's 
now much closer to Apophysis (The sample implementation)

-Fr0st can now be run without initializing the screen, 
useful for file generating scripts.


Home Page:


click to view original size


Fractal Fr0st - 0.4 - Dec 21, 2008
Fractal Fr0st - 0.3 - Aug 6, 2008
Fractal Fr0st - 0.2 - Jul 12, 2008
Fractal Fr0st - 0.1 - Jul 2, 2008 account Comments

If you wish to leave a comment with your account, please sign in first.

August 7, 2008 8:01am - Jordan Trudgett - nickname: (tgfcoder)
This is really good. Great work!
So I see you found blitting a 1x1 surface to be faster than setting pixels? That's interesting, lol
July 16, 2008 9:11am - Marcel Rodrigues - nickname: (marcel)
Ok, thanks. I got my flame rendered.
Interesting project.
July 14, 2008 7:54pm - Vitor Bosshard - nickname: (algorias)
Well, you just need to save the flame as sample.flame in the parameters folder. However, Frost does not render the flame in any way similar to apophysis, it is not meant to be a replacement.
July 13, 2008 5:19pm - Marcel Rodrigues - nickname: (marcel)
How can I render Apophysis flames in this program?
July 12, 2008 9:18am - Vitor Bosshard - nickname: (algorias)
I've refactored the parsing since 0.1 release, it's much more compact now, but still uses the same ugly flag setting approach.

I find that bug rather strange (doesn't happen to me). Thinking about it, it might be that line ends are getting included in the gradient object, so I would need to call a strip after reading each line.

Thanks for the feedback!
July 10, 2008 1:45pm - Jordan Trudgett - nickname: (tgfcoder) - 3/5
Ooh... very colourful and patterny. Them's scientific words :D

I had one problem,

File "Fractal Fr0st", line 76, in get_gradient
gradient.append([int(hex_gradient[i:i+2],16),int(hex_gradient[i+2:i+4],16),int(hex_gradient[i+4:i+6],16)]) #converts FFFFFF to (255,255,255)
ValueError: invalid literal for int():

I put a try/except wrapper around it to make it ignore the error (I really could not work out why the error occurs, but it's probably something to do with how you're reading the data from file.. there might be a null character at the end or something strange) Try using hex_gradient=hex_gradient.strip() before that loop?

Apart from that, it worked fine.

I also noticed that you used a 'black.png' which was a big png filled with 1.5% black throughout. You can use this too:

background = pygame.Surface(size)

which would be the same (surfaces are initialised to black)

Lastly, your parsing of XML was crude. :P Sounds like something *I'd* do. I know parsing XML trees is annoying. I had to do some for the maps in my game.
July 3, 2008 1:15pm - Emanuel Berg - nickname: (metabaron)
Ha ha, I'd love to play with this on acid :)

our projects welcomes all python game, art, music, sound, video and multimedia projects. If they use pygame or not.
recent releases
Apr 19, 2014

Apr 16, 2014

Apr 13, 2014

Apr 9, 2014

Mar 18, 2014

Mar 15, 2014

Mar 14, 2014

Mar 13, 2014

Mar 11, 2014

... more!
for pygame related questions, comments, and suggestions, please see help (lists, irc)