title

Jeremy Witt's 3D ART page

Side

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.



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

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

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

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

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

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