diff --git a/src/presenter.cpp b/src/presenter.cpp
index 9aa16ea4e8baca33512eba45e2e181ff8b9be15d..97a58030971c09b53b642a4f2460c3de08677e67 100644
--- a/src/presenter.cpp
+++ b/src/presenter.cpp
@@ -13,6 +13,18 @@ Presenter::Presenter() : com::Runner{ self_name() } {}
 
 Presenter::~Presenter() {}
 
+static void cycle_background_color() {
+    static float r = 0, g = 0, b = 0;
+    gfx::background_system()->background()->color() = vec3{
+        std::cos(r) / 4. + .25,
+        std::cos(g + 3.14159 / 2.) / 4. + .25,
+        std::cos(b + 3.14159) / 4. + .25,
+    };
+    r += 0.01;
+    g += 0.01;
+    b += 0.01;
+}
+
 static com::Folder *generate_grid() {
     auto material = gfx::material_system()->insert_default_material("grid_material", { "materials" }, vec3{ 0 });