The Making of the Movie
G-force is an mp3 visualizer program that we used with our project. The program runs with 4 basic components: WaveShapes, DeltaFields, ColorMaps, and Particles. These four are tied together by the program and dictate what is drawn on the screen for each frame.
WaveShapes:
These are the moving shapes that move with the music. They can sample various
aspects of the sound but usually focus on the frequency or the basic beat of
the song. The WaveShape can be any mathmatical equation or form, it can move
around the screen or it can remain stationary, but all WaveShapes bounce, dance,
flicker, or otherwise react to the music.
DeltaFields:
DeltaFields control how existing things on the screen move and change. DeltaFields
are just a set of instructions telling the computer the position to draw a new
pixel given the current x and y coordinates. Both polar and rectangular coordinates
can be used. Although the concept behind a DeltaField is simple they can become
very complex, as intricate shapes and forms arise out of the equations. Because
DeltaFields are recursive (they are called on for every new frame drawn) forms
such as fractals are commonly used. Watch our movie for an example of a DeltaField
using the Julia Set!
ColorMaps:
These are instructions that tell the computer what colors to draw for each pixel
on the screen. For each pixel a value of 1-256 is calculated and that number
is then turned into the corresponding color set out by the ColorMap. The ColorMap
sets a one-to-one correspondence between pixel index value and color. Colormaps
also involve an element of time and can set how fast a drawn pixel will fade
once it is put on screen.
Particles:
Particles are similar to WaveShapes except they are not affected by the music.
They are set by more mathmatical equations and can be anything from a pulsing
sine wave to a rotating cube or hypercube. The shape and movement of particles
can be very concrete since they are set out ahead of time, although some randomization
can be included. Particles are randomly introduced by g-force, and once a particle
draws itself on the screen the deltafield acts on it just like any other drawn
pixel.
Looping and the dimension of time:
For each frame, g-force goes through the following steps: Using the current
deltafield it takes the current frame and creates a new frame. It then samples
some sound and gives it to the current waveshape. The output from that waveshape
is then placed on top of the new from supplied from the first step, and the
frame is shown on screen. Because this happening 24 times per second the dimension
of time is smoothly added. Also, because each frame is drawn on top of the last
the illusion of depth and movement is often created. When fractal iterative
deltafields are used it is often possible to see the same object repeating infinitely
into the background.
Each of the four components of the program can
be looked at as a separate dimension, with the program linking them all together
and creating the interconnections. Like most good programs the larger task is
divided out into its separate elements, so each component can be relatively
simple and deal with one dimension of the image. Each dimension alone is uninteresting,
it is only when they are combined together that motion and time are added. \par
\par Because the dimensions are separated it is possible to have a high degree
of control with what is created on screen. If the current visual isnt quite
right, you can tweak the colors, change the waveshape of the music, or try a
different pattern in the background. It is also interesting how different each
dimension looks when combined with others. For example, a circular waveshape
can look like its stretching outward or being pulled inward, depending on the
deltafield used. Similarly the same deltafield can have an entirely different
characteristic depending on what colors or used or what shapes happen to be
on screen for the deltafield to act on.
Visit G-Force for a more in-depth look at how these visualizations can be made.