+ sun_angle += Geometry::Angle<float>::from_degrees(4*dt/Time::sec);
+ sun.set_direction(GL::Matrix::rotation(sun_angle, sun_axis)*-sun_node);
+
+ wisp_angle += Geometry::Angle<float>::from_degrees(6*dt/Time::sec);
+ float r = 3.1f+1.1f*cos(4.0f*wisp_angle);
+ GL::Vector3 p(cos(wisp_angle)*r, sin(wisp_angle)*r, 3.6f+0.4f*sin(1.6f*wisp_angle));
+ wisp.set_position(p);
+ float twilight = 0.8f-min(max(sin(sun_angle), -0.05f), 0.2f)*4.0f;
+ wisp.set_color(wisp_base_color*((3.0f-2.0f*twilight)*twilight*twilight));
+ flare.set_matrix(GL::Matrix::translation(p));
+