Final Project : Cuckoo Clock

Jamie Ball & Kara Dodd

Description:

Our project was to make a working cuckoo clock. That means: a clock that keeps the appropriate time and a short animation of a birdie "cuckoo-ing" outwards from the clock. The clock features and minute, second, and hour hand. Currently there are no user controls, the clock is autonomous.

User Guide:

Because this is just a simple cuckoo-clock, there is not much in the way for user control. A warning for any users however is that this clock only runs on the FireFox web browser!

How to Make One:

The main geometry for the clock face, outer shell, cuckoo doors, and the bird were created in Blender and exported as OBJ files.

We used the Three.js javascript library to create everything else that you see in the scene. This includes: cameras, extra geometry and materials for the clock hands, lighting, and vector transformations. The OBJ files that were created in Blender were loaded into the scene using the OBJMTLLoader function in the Three.js library. Each part of the mesh was added to the scene as separate Three.Object3D items so that they could be individually animated.

Time is kept by the standard JavaScript Date object that has the functions getSeconds, getMinutes, and getHours() which we used for the individual clock hands.

The cuckoo animation was implemented by doing a delayed animation using setTimeout for a certain amount of time. After the animation is complete the timeOut is then cleared and the mesh items are reset.

Short Animation: