Die Kerze besteht aus mehreren Parameterflächen für die folgenden Komponenten:
Letztere werden mit der gleichen parametrischen Funktion erzeugt:
x = a (c - cos(u)) sin(u) cos(v)
y = a (c - cos(u)) sin(u) sin(v)
z = b cos(u)
mit u = 0, ..., π und v = 0, ..., 2 π.
Hierbei bestimmen für c = 1 die Parameter a die "Dicke" und b die Höhe. Für Werte von c > 1 entstehen Formen mit abgerundeten Spitzen, wie die folgenden Beispiele zeigen.
Das "Tanzen" der Flamme wird erreicht, indem eine Variable t zeitlich animiert wird und das Produkt aus t und einer Zufallszahl (0...1, Funktion rand) zur x-/y-Komponente der Flamme addiert werden, welches einer waagerechten Verschiebung bezüglich der Dochtposition entspricht; zusätzlich wird die z-Koponente mit einer kleinen Zufallszahl multipliziert, wodurch die Flamme mehr oder weniger gestreckt wird.
Hier noch eine kleine Spielerei zum 3. Advent ...