Helicopter Bunny Attack CSC 474 Final Project by Daniel Pierson


Description

My project is the animation of a flying helicopter piloted by a bunny character. The helicopter flies behind a moving car in an effort to chase and shoot rainbow particles at it.


Implementation

The camera is set at a fixed position and presents a view of the entire scene to the viewer upon starting the program. I downloaded a model for the cars and used the Stanford bunny model provided in an earlier class. The helicopter meshes were provided for an assignment in class and are sourced from Thingiverse.

The shading for the car and bunny is done using the Blinn-Phong shading model.

The car travels along a fixed Catmull-Rom spline curve around the map and moves in the direction of the tangent vector along the curve (the curve is shown in the figure below). The speed of the car is calculated by arc length parameterization, and as a result remains constant.

The helicopter's position is translated just behind the car's position, so it essentially follows the same curve. Unlike the car, however, the helicopter is rotated using key-framed animation, giving it the appearance of "chasing" a moving vehicle.

The animation also utilizes a particle system. Particles are generated for the appearance of exhaust coming from the helicopter, as well for the helicopter's "rainbow attack" weapon. Both sets of particles have movement generated by Symplectic Euler Integration, where force is accumulated and velocity and position are integrated. Collision with a floor relative to the car/helicopter is also enabled.


Video

HTML5 video compatible browser required