Apple Animation

Jeremy Stribling, cs184-cf

CS184, Fall 2000

UC Berkeley

Instructor: David Forsythe


The goals of this project were:


Apple model

At the time of the second deliverable, I had completed the model of the apple, and rendered it in several positions using the BMRT version of Renderman. These renderings are supplied as TIFF files below:

apple1.tiff
apple2.tiff
apple3.tiff
apple4.tiff

Some notes about this model:

Here are the C++ files used to generate the apple core surface:
apple.cpp
rendcomp.cpp
rendcomp.h
Here is the generated RIB file:
apple.rib
Here are the surface shaders used:
appleskin.sl
applecore.sl


OC Animation

Since the the second deliverable, I created a Windows program entitle OC Animation that allows a user to create an animation using an extended version of the crystal ball interface from our homework. The user, through a simple interface, can create simple translation and rotation animations to a 3D cube, and the apply those animations to a RIB file. They can specify the position of the cube at keyframes, and then linearly interpolate between the two frames to create the animation. Here is the executable:

Download OCAnimation for Windows
Download DLLs that you might need to run it



Here is an animation I created of the apple. I used a trial version of GIF Construction Set to create the animation from BMP files (which I converted from TIF files using a trial version of Graphics Workshop ), and I didn't have as much control as I would have liked over the framerate of the animation. As a result, it looks pretty jerky, but if I had a better GIF creation tool available it would be much smoother.

Apple Movie - GIF version
Apple Movie - AVI version

Some notes about this application:

Here is a ZIP file of the project, containing all of the source code in entirety:

Animate.zip

Here is a copy of the Help dialog from the program, explaining how to use the program:

Help


Project Deliverables and Assessment:

Contract
1st deliverable
2nd deliverable

I believe I've met I'll be goals for this project, and certainly exceeded my expectations in the elaborateness of the Animation tool I created. My original plan was just to write a C program that would take in some configuration file and generate a new RIB animation, but I really went overboard with creating a GUI-based Windows program, having no previous experience with such a project at all. I spent a lot of time on this project, and am pleased with the final result, especially considering I taught myself a great deal of this stuff on the fly, and that I was working by myself. The one thing I would work on if I had more time would be to make the inner core of the apple model look wetter, but unfortunately I had to sacrifice working on that to create OC Animation. All in all, I feel I've really accomplished something with this project, perhaps more than on any other project I've worked on here at Berkeley.

Jeremy Stribling