Project 2b - Design/import animation frames.
Goal: The goal of the first phase of project 2 was to design an animated human-like figure in IronCAD, and import animation frames into the viewer so it appears that the figure is walking.

Tools Used: My project was written on Windows XP. I used IronCAD for the 3D Modeling and Processing 0095 Beta (http://processing.org) for the viewer.

Animation Design: Like my caplet, I used IronCAD to design my animated person. This turned out to be a little frustrating, and at more than one point I wished I had taken another students advice to use Maya or another 3D design program. I was able to copy and move the caplet fine, but I could never figure out how to scale them non-uniformly. Whenever I scaled the height using the sizebox, the width and depth would also scale. Even worse, sometimes the scaling would fail completely and cause some corruption in my model. This corruption caused me to have to start over at least twice. Eventually I got a robot-looking figure and decided to start animating with that. For time sake I created only 4 frames, each with different leg positions. I rotated each leg forward 22 degrees and captured all four combinations as STL files.

Camera Control: The only camera controls I have implemented right now are rotation and zoom about a particular point of interest. I will implement a more advanced translation system in the next phase. Right now the pseudo-code for my camera control looks like:

1) Translate to center of screen.
2) Translate the camera towards or away from the point based on zoom factor.
3) Roate X by the Y mouse position.
4) Rotate Y by the X mouse position.
5) Translate down in Z so the model is centered (the anchor for the STL file is near the bottom).
6) Draw the model.

Performance: When my viewer first starts up it takes a few seconds for the models to load initially. This is expected since Java needs to read in 2 MB of ascii STL file data. Once the models are loaded things run more smoothly. I use the framerate() command within processing to place an upper limit on the number of frames per second that are rendered. An fps value of 15 seems to be a good compromise so as not to use too much processing power. When I set the framerate value to something very high, the models are rendered so fast they seem to blur together. I take this as a sign that my viewer runs with good efficiency.

Files:
IronCAD 3 Scene - robot.ics
Frame 1 STL - 00.stl
Frame 2 STL - 01.stl
Frame 3 STL - 11.stl
Frame 4 STL - 10.stl
Viewer Source Code - p2b.pde

Applet Instructions: the applet must be "clicked on" to activate key controls.
Use the mouse to rotate the view.
Press + and - to zoom in and out.
Press A to start and stop the animation.

Applet:
(Use Mouse to Rotate)
To view this content, you need to install Java from java.com


Demo Video: p2b-demo-divx.avi (3.3 MB, DivX Required)

Demo Pictures:
(click to enlarge)

ss1
Frame 1 of the animated figure.

ss2
Frame 2 of the animated figure.

ss3
Frame 3 of the animated figure.

ss4
Frame 4 of the animated figure.

ss5
The figure being displayed in the viewer.

Copyright Info :: W3C :: CSS