LLAMA: Lava Lamp Animated Model Application
For my fourth year university project, I chose to create a graphical application which simulates (or at least approximates) the molten wax lava lamps which were very popular a few decades ago, and which have recently enjoyed a resurgence. I created two different implementations, each attempting a different level of simulation; the mesh-based recreates the surface tension of the wax blobs using finite element analysis, and is aesthetically the more pleasing of the two, whereas the iso-surface is a particle simulation rendered using marching cubes, which is currently slower and perhaps less representative of the real lamp, despite attempting to use more realistic physics. I hope to merge these two versions at some point, although it will be a difficult undertaking
Documentation
Report (1,046Kb pdf)
User guide
Screenshots
| Mesh based implementation | Iso-surface based implementation |
 | Silly lamp shape |
 | Rising column |
 | Large lamp for less collisions |
 | Diagnostic mode |
 | Three way collision |
 | Bottleneck |
 | Specular highlights |
 | Blob breaking off |
 | Sharp lighting |
Downloads
Textures (760Kb) are recommended but are not required for all versions. Pink maracas texture taken without permission from Samba De Amigo...sorry.
Windows (64Kb) and Linux (157Kb) executables for mesh based implementation (recommended version).
Windows (84Kb) and Linux (155Kb) executables for iso-surface based implementation (slower, still requires work).
Requires the OpenGL extension, GLUT, available from http://www.opengl.org/developers/documentation/glut.html
You will need to place the glut32.dll file in either your windows directory or in the same folder as globe.exe
(latest version at time of writing is http://www.xmission.com/~nate/glut/glut-3.7.6-bin.zip)
My homepage