
Jeremy Witt's 3D ART page
|
Sunday, April 9 2000: On to Animation
Page 4 Animating it!:
This page shows the process (and results) of my first attempts at animation on any
scope, with the exception of some little rotating icons in PovRAY.
In Radiance, animations are performed
by the program 'ranimate'. This program reads animation variables
such as number of frames, base file name, motion blur, etc.. from a control file. When Animating objects
in the scene, a shell script is called before each frame with the frame number as the
parameter. In this way, one is able to dynamically update the scene as per their own
desires. If a change in the view position is desired (for instance
animating a camera path) a view file is given with one line for each frame indicating the
view for that frame. (These topics are discussed further in the book Rendering With Radiance)
The view change idea presented my next problem......
|
Mar 26 2000: Phase 10
How does one come up with a smooth path for the camera!? All I wanted at first was a
circular path around the static scene. After thinking about the problem for a little
bit I came up with a very quick and rudimentary hack^h^h^h^hprogram to generate a
set number of viewpoints around a circle in the xz plane (for my scene) centered
at the xz origin at a configurable height, radius, and View Center [(0,0,0) in
my scene] The speed of the camera can be directly controlled by the number of points
chosen along the path. This program can be found here (please
don't laugh too much, I threw it
together in a *very* short time just to get an animation going.)
makepath.cpp
In any case, I was able to come up with my view points, and here is the resulting
animation (1.8Meg AVI)
nlEspAnim3-25-00.zip This represents my first attempt at
animating this scene. If you look closely, you'll see a singularity
when viewing the Espresso machine from behind. This is because the LightProbe image
had poor sampling on that portion of the sphere. I take special care of this problem
in the next cycle of animations.
|
March 29 2000: Phase 11
I was basically unsatisfied with the previous animation, so I began searching
for a way to make a smooth camera path that was a little more interesting
than a vanilla circle.. My first idea was to allow the height to vary in my previous program while
keeping the view center constant, thereby making a 'warped' circle that looks correct when viewed in
the xz plane, but skewed when viewed on any other axis. In the end,
this would not be a very flexible solution, so I abandoned this idea before hacking it out.
I began doing research on the topic and found that the Animation chapter (9) in the Radiance book
written by Peter Apian-Bennewitz made reference to using spline interpolation in animations.
He further claimed that his program
'rshow' implemented this technique and allowed the user to create camera paths which could
be used in renderings.. After downloading and playing with rshow, I found this claim to be
wholly inaccurate.. while the program DID use spline interpolation for GUI display,
It was unable to take a list of control points and output a camera path of n view points along
those controls. After a little more searching in my own library, I ran across the akima spline
algorithm in "Fast Algorithms for Computer Graphics" [Glaeser 94]. I extended that algorithm,
to create a program that would allow me to use a set of control points to viewpoint which would then
generate a series of n
view points along the spline that connects them. The current version of this program is
[once again] a *complete* hack, and the quickest attempt at getting the output I desired.. I
do intend on going back and fleshing this program out, but
at the current time this is all I have to offer. ->
camp2.c (VERSION 0.1) In the current
incarnation of this
program, the control points and direction vectors (10 each) are hardcoded into the program and it
is configured to output 361 view point lines for use in a radiance animation. Next version
will include the ability to read control information from a view file that was taken from 'rview'
|
March 10 2000: Phase 12
Ok, so you've been dying to see the output of all the labour from the last step right?
(well maybe not, but here you go anyway) Animation #1 Coffee Machine in a Kitchen.
Animation #2 Coffee Machine in a Cathedral. (click on the images below for an MPG animation)
|
April 19 2000: Phase 13 - The Search for Spock
Soooooo, I tried to make my own lightprobe. At this point in history, this is the best
I can do. Pretty lame, neh? Well, I'm working on it! The blurryness in the background image is a product
of the fact that there were 6 images taken in succession to create this HDR (High Dynamic Range) image.
[yes, that's my ugly mug in the bkgnd... I'm working on that too]
On another topic, I've been able to compile Kernel based NFS (as patches onto kernel version 2.2.14) this allows
the NLM (Network Lock Manager) to work, which in turn enables Cluster Rendering! Cluster rendering uses
multiple computers and a common NFS directory to compile an image/animation quicker...
The animations I had previously worked on were taking around 74 hours to complete..
After this I'm able to throw multiple computers
at the problem, and it now takes about half that time. I still have a few problems, However. For starters,
I made some hacks to the Radiance Codebase to get it to work in libc 6 environment, by doing this, I think
I've introduced a bug that will not allow the rendering to start from my libc 6 system. The second issue that
I am dealing with, is the fact that if I start this on the slower computer, the faster computer starts and
finishes rendering frame 2 before frame 1 is complete... then requests access to a locked ambient file.. It
cannot get access until frame 1 is finished so it terminates and doesn't restart until it is manually forced.
|
|
|
|

Gallery 1 Click on this icon to look
at a Gallery of my Radiance Images (most can be seen here though)

Gallery
2 Click here to look at a Gallery of my other (NON radiance)
3D/2D Art

Cryptnet Click on this icon to return to
Cryptnet (My main Homepage)

Links Click on this to see Links to various other
Radiance/3D Resources (including the inspiration for this work

Download
Click on this Icon for Downloads (models and stuff)

E-Mail
Click on this icon to send me some e-mail.
|
|
|