Ŀ Ŀ Ŀ Ŀ Ŀ Ŀ Ŀ
   Ŀ   Ŀ   Ŀ  Ŀ   Ŀ         Version 1.0
 Ŀ                      
     Ŀ   Ŀ    Ŀ        Ŀ         Copyright 1994
                              Ŀ    Brian Towles
                   
Ŀ Ŀ  Ŀ Ŀ Ŀ Ŀ Ŀ Ŀ Ŀ
 Ŀ           ڿ ڿ   Ŀ  Ŀ   Ŀ   Ŀ 
    ڿ                           
 Ŀ           ٳ   Ŀ              Ŀ 
                                    
                     

Fractal Animator is a flexible command-line tool to be used in conjunction 
with Fractint to create fractal animations with ease.

 TABLE OF CONTENTS 

- IDEAS BEHIND FRACTAL ANIMATOR
- BASIC USES OF FRACTAL ANIMATOR
- ADVANCED FEATURES OF FRACTAL ANIMATOR
- OTHER FEATURES OF FRACTAL ANIMATOR
- EXAMPLE COMMAND LINES
- A FEW COMMON QUESTIONS
- THANKS
- LEGAL JAZZ AND MONEY


 IDEAS BEHIND FRACTAL ANIMATOR 

The whole idea for Fractal Animator originated when I needed to created a 
series of single images,  using Fractint, and capture them frame-by-frame 
to video tape.  I had a few zooming utilities for Fractint, but their 
output was basically useless.  So I wrote small C programs to make giant 
batch files to control Fractint via the command line, which worked well, 
but it was somewhat complex.  So I've simplified all the things that I've 
learned about fractal animation into a rather easy to use command line 
tool.  Fractal Animator solves these problems presented by other zooming 
utilities I've seen:

- The command line length is limited from a batch file because of DOS, so 
image information is stored in Fractint .PAR files, for greater precision
and more options

- A substitute for the linear zooming formula, which creates a slow to fast 
zoom speed; the Fractal Animator's "power" formula creates a smooth zoom, and 
keeps the aspect ratio in tact

- Multiple input and output options, for real control of what is written to 
the .PAR files

- Many helpful functions are provided: zooming, panning, rotation, .GIF 
input, parameter functions, .MAP file input, palette transition, and 
additional .PAR file input for custom animations


 BASIC USES OF FRACTAL ANIMATOR 

To use any of the functions of this program well, it is important that one 
basically understands the workings of Fractint, having to do with video 
mode, parameters, saving files, .PAR files, and some other important 
aspects of it.  Any animation created by Fractal Animator will create a 
number of files: a .BAT file which controls the entire animation and is 
executed by the user to start the animation and a .PAR file which contains 
information about the individual images.  Sometimes Fractal Animator will 
also create .MAP file(s) which are used to control the palette for every 
image.  All of these files are vital in the creation of the animation and 
should be copied into the Fractint directory before trying to render the
frames.

Zoom-In & Pan: A zoom-in magnifies a small part of a fractal image, and the 
a is simply a movement across (translation) the fractal image.  For the 
simplest applications of the program, you only need to have the initial and 
final corners of the fractal you wish to zoom into. The default fractal is 
the mandelbrot set, but this can be changed with a command line argument. 
The /i switch means initial corners in the form xmin, xmax, ymin, ymax; and 
the /f switch accepts the same format for the final corners.  So the 
command line would end up similar to this:

FA /i-2.5,1.5,-1.5,-1.5 /f-2,-1.6,-0.15,0.15

The two files created from Fractal Animator are ANIM.PAR and ANIM.BAT.  If 
those files are copied to your Fractint directory, typing "ANIM (Enter)" 
will create your first animation!  Link these images together with a .FLI 
animation program to view a smooth zoom-in.

** A zoom-in is seen when the length of the sides is decreasing (in the 
previous example from 4 and 3 to .4 and .3) and a pan is seen when there is 
a different center point for the viewing windows (from -.5,0 to -1.8,0).  
Also notice that the aspect ratio between the side lengths is constant 
(4:3).

Zoom-Out & Pan:  A zoom-out is the opposite of the zoom-in, so the 
following command line will create a simple zoom-out, which also pans:

FA /i-2,-1.6,-0.15,0.15 /f-2.5,1.5,-1.5,-1.5

Also, the coordinates of the corners of a fractal image get bulky (over ten 
significant figures) so fractal parameters can also be passed through .GIF 
files created by Fractint.  An example would be:

FA /igFRACT001.GIF /fgFRACT002.GIF

The /ig and /fg switches mean initial and final input will come from a .GIF 
file.  FRACT001.GIF is the initial image and Fractal Animator will create 
the transition between it and FRACT002.GIF automatically.

Fractal Parameter Control:  Fractal Animator also allows control of up to 
ten fractal parameters used by Fractint.  From this another basic form of 
fractal animation emerges.  Changing the parameters of a fractal can also 
create a pleasing animation.  The following is a simple parameter control 
animation:

FA /i-2.5,1.5,-1.5,1.5 /0:cos(2*p*x) /1:sin(2*p*x)

The /0 through /9 switches tell Fractal Animator the parameter to vary, as 
well as the function used to vary it.  The first function is a simple 
cosine, in which the symbol p represents pi and x is the fraction of the 
current frame number over the total number of frames.   As expected these 
two functions created a circle motion in the fractal images when animated.  

Functions and constants supported by Fractal Animator are: +, -, *, /, 
^(power), cos, sin, tan, e, and p(pi).  Constant values are also acceptable 
arguments.  The function evaluator in Fractal Animator isn't forgiving, 
which will be improved in later versions.  Here are the basic rules: no 
implied multiplication: ex. 3x+3, no spaces: ex. 5 + x won't work as a 
function, and all trig functions are followed by a set of parathesis: ex. 
sin(x).  All parameters are declared by putting the switch and parameter 
number (ex. /4), followed by a colon(:), and then the parameter function.  
The only variable is x, which is always the ratio of the current frame over 
the total number of frames.

With these simple commands you can create interesting fractal animations, 
but Fractal Animator also has an array of other options.


 ADVANCED FEATURES OF FRACTAL ANIMATOR 

Rotation:  With the /r and /k switches the user can control the direction 
of image rotation.  The /r switch can be followed by a + or - for clockwise 
or counterclockwise rotation respectively (default is counterclockwise).  
The /k switch followed by a number tells the number of whole rotations to 
perform during the animation.  The /ri and /rf switches followed by a angle 
in degrees can be used to set initial and final image rotation angles, and 
Fractal Animator also accepts rotated images and coordinates from Fractint.  
Using these effects together can create amazing output.

Palette Control:  With the /im and /fm input options the user can tell 
Fractal Animator to load .MAP palette files for the initial and final 
images, and Fractal Animator will automatically create a new .MAP file for 
every frame, making a smooth transition between the two palettes.  Palettes 
are also extracted from .GIF input files and the same transition is created 
between those palettes.


 OTHER FEATURES OF FRACTAL ANIMATOR 

Number of Frames:  The /s switch is followed by the number of frames to be 
used in the current animation (default value is 30).

Zoom and Panning Formulas:  The /z and /m switches followed by a l, p, or i 
sets the method used to calculated the steps for zooming and panning 
respectively.  The l stands for linear, which seems to be the standard 
zooming formula, but this creates problems in zoom speed (explained later).  
The p is for power, which means the size of the steps between calculations 
gets smaller as the current frame increases, creating a smooth zoom-in.  
The i, is simply the inverse-power, which is useful for thinks such as 
zooming-out (default is l for both panning and zooming).

Excluding Last Frame:  The /x or exclude last frame switch is useful when 
linking together an animation in which the last .GIF image of one animation 
is the first of the following - one would not want that frame to appear 
twice.  So with this switch the final frame is left out of the animation, 
and another frame is added between the initial and final frames, so that 
the same number of frames are generated as without the switch (not 
default).

Fractint Video Mode:  The Fractint video mode is given with the /v switch 
(default is F3, which is 320x200x256).

Fractint Fractal Name:  The name of the type of fractal used is preceded by 
the /t switch in the animation as defined by Fractint (default is mandel).

Additional .PAR Info:  The /a switch followed by text, will insert that 
text into every .PAR file module created.

Command Line File:  The /c switch can be followed by a filename of a file 
that contains extra command-line info (sometimes the DOS command line is 
too small).  The file must be a text file, with each line containing a new 
switch for Fractal Animator.

Output File Control:  The names of the output files can be controlled with 
the /b, /p, and /m switches.  Following the /b and /p switches are the full 
filenames of the .BAT and .PAR files respectively.  Following the /m switch 
is up to five letters, which serve as the prefix of the map files (ex. 
/mfract, will create this map fract000.map for the first frame).


 EXAMPLE COMMAND LINES 

Here are some command lines with basic techniques:

To create a spiraling zoom-in (FRACT001.GIF is zoomed out):

	FA /igFRACT001.GIF /fgFRACTA002.GIF /zp /yp /k4

To create a swirling effect:
	
	FA /igFRACT001.GIF /0:2*sin(x*2*p) /1:2*cos(x*2*p)

To link three frames into one animation:

	FA /igFRACT001.GIF /fgFRACT002.GIF /x /panim1.par /banim1.bat /manim1

	and then:

	FA /igFRACT002.GIF /fgFRACT003.GIF /panim2.par /banim2.bat /manim2

To use a command-line file:

	FA /canimate.fa

    The animate.fa file:

	// animate.fa - a simple fractal animation
	/igFRACT001.GIF
	/fgFRACT002.GIF
	/zp


 A FEW COMMON QUESTIONS 

Q: Why do the frames seem to be random, and unrelated?
A: Your trying to cover to much ground.  Try adding more steps, changing 
the zoom or pan formula, moving the frames closer together, or lessening 
the magnitude of parameter functions.

Q: How do a test an animation to see if it is what I wanted?
A: Simply load the .PAR file created by Fractal Animator into Fractint, and 
view a couple of single frames (type @ from the main menu and then press
F6 to load a new .PAR file).

Q: Why do frames begin shutter or wiggle when animated?
A: You are zoomed in past the precision of Fractint (try float=yes) or 
parameter functions need to be smoothed or lessened in magnitude.

Q: Why does Fractal Animator tell me the .GIF I tried to use as input does 
not have an application extension block?
A: Make sure any .GIF is completely drawn before you save it, otherwise 
Fractal Animator cannot use it.  For really slow fractals render them at a 
very low resolution and change the video mode with the /v option.

Q: I made a long animation, and some frames are blacked out, or half 
filled, why?
A: I have found this to be a puzzling problem, but basically isolated it to 
Fractint not saving the .GIF correctly.  What is really odd is that if you 
load the half-image into Fractint, redraw it, and save it again it will 
save properly, and this is the only way I know to fix this puzzlin' 
problem.

Q: Why don't formula fractals (from .FRM files) work when loaded from a .GIF 
file?
A: Fractal Animator version 1.0 doesn't detect all the nessary formula 
information needed to create the .PAR file, so this information must be
included with the /a switch.

About recording animations:

Putting fractal animations on videotape can create INCREDIBLE results - you 
can use high resolutions (640x480, is what I've used in the past), with a 
constant speed of 30 fps.  This operation requires a number of different
tools to successfully complete: a VCR with a serial interface (major cash),
a program written to control the VCR (beyond expensive, if purchased), a
VGA to NTSC/S-VHS converter (cheapest, but still expensive), and also an
RS-232 to RS-422 converter for many high-end VCRs.  The scheme I used was 
to create a batch file that first displayed a .GIF on the screen, then a 
command-line program was called to record a single frame onto tape.  With
a shortened pre-roll, and a good VCR, you can record five to six frames per
minute . . . the resutls are well worth the wait!


 THANKS 

Thanks to Fractint, for which my entire program is based on.  Thanks to 
Borland and their C compilers.  Thank you for at least reading this far in 
this documentation (this is my first documentation file, so bare with me.  
I've also been known to misspell three letter words).


 LEGAL JAZZ AND MONEY 

Disclaimer: This program was designed to help people get into fractal 
animation, thus the name of the program.  I take no responsibility for what 
the program does, so use Fractal Animator at your own risk.

Distribution:  This program claims to be Shareware, so feel free to 
distribute it as you will, but for no charge.  Do not bundle it with other 
products, and distribute it in original form (with all files: FA.EXE, 
FA.TXT, and the example files).  If you are one of those Shareware Houses
or want to distribute this program for a small charge, you must first 
contact me in person and get my okay, before doing so.

And Finally Money and Support:  I would greatly appreciate any donations 
for the use of this program (about $20 dollars is good, or whatever you 
deem enough).  A lot of work went into planning this program and trying to 
make it as comprehensive as possible.  I am possibly planning a Windows 
version of this program, with features such as a preview mode, to get the 
feel of what the animation will look like.  This all depends on your 
response, so at least try to write.  If you write with any technical 
questions or bugs, I'll try to respond.  I also have an Internet address  
most of the year, I'm willing to give that out, too.  

Thanks:

Brian Towles 
8109 Running Cedar Trail
Raleigh, NC 27615
