+};
+
+VG_STATIC struct world_global
+{
+ /*
+ * Allocated as system memory
+ * --------------------------------------------------------------------------
+ */
+ void *generic_heap;
+
+ /* rendering */
+ glmesh skydome;
+ glmesh mesh_gate;
+ mdl_submesh sm_gate_surface,
+ sm_gate_marker[4];
+
+ double sky_time, sky_rate, sky_target_rate;
+
+ u32 current_run_version;
+ double time, rewind_from, rewind_to, last_use;
+
+ /* water rendering */
+ struct
+ {
+ struct framebuffer fbreflect, fbdepth;
+ }
+ water;
+
+ /* split flap display */
+ struct
+ {
+ glmesh mesh_base, mesh_display;
+ mdl_submesh sm_base;
+ u32 active_route_board;
+
+ u32 w, h;
+ float *buffer;
+ }
+ sfd;
+
+ v3f render_gate_pos;
+ int in_volume;
+
+ int switching_to_new_world;
+
+ world_instance worlds[4];
+ u32 world_count;
+ u32 active_world;