I’ve coded animation to make the lamp jump around and for a fireplace to flicker. I’ve also incorporated various textures into the scene. The lamp performs a larger jump when faced with an obstacle. Here’s the final results:
If you want to compile the program yourself, you can download the source code here. You need JOGL (Java OpenGL bindings) and the Java SDK installed. Instructions are included.
The user interface lets you do the following:
1. Change camera angle to follow the lamp.
2. Disable/Enable Textures
3. Disable/Enable all objects
4. Turn lights on and off. Light 0 is the room light, and light 1 is the lamp light.
5. Change the size of the room the lamp is in.
6. Pause/Start Animation
7. Animate a single frame
8. Reset the scene