- int draw_solid = player.is_dead | freecam;
- render_world( vg.pv, camera_mtx );
+ render_world( &main_camera );
+ render_water_texture( &main_camera );
+ glBindFramebuffer( GL_FRAMEBUFFER, gpipeline.fb_background );
+ render_water_surface( &main_camera );
+ render_world_gates( &main_camera );
+}
+
+VG_STATIC void render_menu(void)
+{
+ glClear( GL_DEPTH_BUFFER_BIT );
+ menu_render( &main_camera );
+}
+
+VG_STATIC void render_player_into_world(void)
+{
+ glBindFramebuffer( GL_FRAMEBUFFER, gpipeline.fb_background );
+ draw_player( &main_camera );
+}
+
+VG_STATIC void render_player_transparent(void)
+{
+ camera small_cam;
+ m4x3_copy( main_camera.transform, small_cam.transform );
+
+ small_cam.fov = main_camera.fov;
+ small_cam.nearz = 0.05f;
+ small_cam.farz = 60.0f;