baby lock the door and turn the lights down low
[carveJwlIkooP6JGAAIwe30JlM.git] / world_routes.h
index 121f447fd5113d7536e55fdccec2530cabb473a7..501915a0643859d812a41dd31d87a6cffd110ddc 100644 (file)
@@ -789,8 +789,6 @@ VG_STATIC void world_routes_create_mesh( world_instance *world, u32 route_id )
    scene_copy_slice( world->scene_lines, &route->sm );
 }
 
-VG_STATIC void world_scene_compute_light_clusters( world_instance *world,
-                                                   scene *sc );
 /* 
  * Create the strips of colour that run through the world along course paths
  */
@@ -802,8 +800,6 @@ VG_STATIC void world_routes_generate( world_instance *world )
    for( u32 i=0; i<world->route_count; i++ )
       world_routes_create_mesh( world, i );
 
-   world_scene_compute_light_clusters( world, world->scene_lines );
-
    vg_acquire_thread_sync();
    {
       scene_upload( world->scene_lines, &world->mesh_route_lines );
@@ -1142,6 +1138,13 @@ VG_STATIC void world_routes_update( world_instance *world )
 }
 
 VG_STATIC void bind_terrain_noise(void);
+VG_STATIC void world_bind_light_array( world_instance *world,
+                                       GLuint shader, GLuint location, 
+                                       int slot );
+VG_STATIC void world_bind_light_index( world_instance *world,
+                                       GLuint shader, GLuint location, 
+                                       int slot );
+
 VG_STATIC void render_world_routes( world_instance *world, camera *cam )
 {
    m4x3f identity_matrix;
@@ -1149,7 +1152,13 @@ VG_STATIC void render_world_routes( world_instance *world, camera *cam )
 
    shader_scene_route_use();
    shader_scene_route_uTexGarbage(0);
-   world_link_lighting_ub( world, _shader_scene_route.id, 2 );
+   world_link_lighting_ub( world, _shader_scene_route.id );
+   world_bind_position_texture( world, _shader_scene_route.id, 
+                        _uniform_scene_route_g_world_depth, 2 );
+   world_bind_light_array( world, _shader_scene_route.id,
+                        _uniform_scene_route_uLightsArray, 3 );
+   world_bind_light_index( world, _shader_scene_route.id,
+                                 _uniform_scene_route_uLightsIndex, 4 );
    bind_terrain_noise();
 
    shader_scene_route_uPv( cam->mtx.pv );