Animation with Apophysis and FLAM3

The FAQ, the wiki, and other documentation.

This page describes how to use Apophysis and the FLAM3 tools to design and render your own animations. If you run Windows and have been able to use Apophysis to make some flames that you like and you are ready to animate them, then this tutorial is written for you. You will need to run command line programs and edit text files, but I'll tell you exactly what to do.

A more automatic way of doing animations using Apophysis scripting is described here.

First install apophysis from its own web site. You should probably also install the latest beta version. Then get the FLAM3 zip file and expand at the root of your C drive, so the path to the folder is "C:\flam3". Configure Apophysis: press Control-P, click on Paths tab, set the Export Renderer to flam3-render from the zip file. If you know how to, you can put the 4 FLAM3 executables into your path. Then you can work in any directory, and skip step 1 below.

The FLAM3 tools are briefly documented in their README. Apophysis has a help menu and online doc that's quite good. There are also a number of web sites with additional tutorials, resources, and user forums.

1. Open a command prompt window (Start Menu, "Run...", type "cmd" and press return). In the window that appears type
cd c:\flam3

2. Use Apophysis to design two flames, save each one in a separate file. Let's call them "one.flame" and "two.flame".

3. Use your text editor to open a new file "myanim.flame". Paste in these two lines of XML:

<myanim>
</myanim>
Save myanim.flame in c:\flam3.

4. Open up one.flame in your text editor. Copy the part that starts with <flame> and ends with </flame> (inclusive), and paste it into the middle of myanim. It should have a bunch of <xform> and <rgb> elements in it. Do the same with two.flame.

5. myanim.flame should now look like:

<myanim>
<flame>...</flame>
<flame>...</flame>
</myanim>
Make sure all the keyframes (each <flame>) have the same size. Look for size="XXX YYY". XXX and YYY are the width and height in pixels of the images to be rendered. If they differ it's because the window size was different when you used Apophysis to make them. Use your text editor to change them to be the same.

Save myanim.flame.

6. To test you have it right, render your two keyframes by typing this into the command window:

flam3-render < myanim.flame
You should get two files 0000.jpg and 0001.jpg that are your keyframe images (without motion blur because we are just doing a batch render here, not animation yet).

7. Do the interpolation to make an animation by typing:

set sequence=myanim.flame
set nframes=60
flam3-genome > seq.flame
Take a look at the output file seq.flame with your editor. It has one <flame> for each frame of your animation. Each one has a different time, starting at 0 and going to 180. The first 60 (the value of nframes) are of the first keyframe doing a rotation. The next 60 are of a transition from the first keyframe to the 2nd. The last 60 are of the 2nd keyframe doing a rotation.

8. Render a test of the animation like this:

set verbose=1
set dtime=10
flam3-animate < seq.flame
That will render every 10th frame.

9. Render a final animation:

set verbose=1
set dtime=1
set qs=10
flam3-animate < seq.flame
That renders every frame (dtime 1) at 10x the quality (qs 10).

That is the end of our first example. You should have a movie of your own design.


This work is licensed under a Creative Commons License by spot at draves dot org.