added scene_vert struct, result is good
[carveJwlIkooP6JGAAIwe30JlM.git] / world_routes.h
index 795f57b9f3eae6143abb3eb520c589b1c05943e8..4e455d345b8f4728ae2cdc9c3c305aefb9a76203 100644 (file)
@@ -746,12 +746,13 @@ VG_STATIC void world_routes_create_mesh( u32 route_id )
          if( ray_world( sa, down, &ha ) && 
              ray_world( sb, down, &hb ))
          {
-            mdl_vert va, vb;
+            scene_vert va, vb;
             
             v3_muladds( ha.pos, up, 0.06f, va.co );
             v3_muladds( hb.pos, up, 0.06f, vb.co );
-            v3_copy( up, va.norm );
-            v3_copy( up, vb.norm );
+
+            scene_vert_pack_norm( &va, up );
+            scene_vert_pack_norm( &vb, up );
             v2_zero( va.uv );
             v2_zero( vb.uv );
 
@@ -1132,7 +1133,7 @@ VG_STATIC void world_routes_update(void)
 }
 
 VG_STATIC void bind_terrain_noise(void);
-VG_STATIC void render_world_routes( m4x4f projection, v3f camera )
+VG_STATIC void render_world_routes( camera *cam )
 {
    m4x3f identity_matrix;
    m4x3_identity( identity_matrix );
@@ -1142,9 +1143,12 @@ VG_STATIC void render_world_routes( m4x4f projection, v3f camera )
    shader_link_standard_ub( _shader_route.id, 2 );
    bind_terrain_noise();
 
-   shader_route_uPv( projection );
+   shader_route_uPv( cam->mtx.pv );
+   shader_route_uPvmPrev( cam->mtx_prev.pv );
    shader_route_uMdl( identity_matrix );
-   shader_route_uCamera( camera );
+   shader_route_uCamera( cam->transform[3] );
+   shader_route_uBoard0( TEMP_BOARD_0 );
+   shader_route_uBoard1( TEMP_BOARD_1 );
 
    mesh_bind( &world.mesh_route_lines );