engine: debug lines module
[fishladder.git] / fishladder.c
index f6673f77aeda5c4c920682daa231c419fd81a79f..12628ca4bfd991c74da464f514dfbfedeeefe5f8 100644 (file)
@@ -30,7 +30,6 @@ SHADER_DEFINE( colour_shader,
 
 mat4 m_projection;
 mat4 m_view;
-mat4 m_pv;
 mat4 m_mdl;
 
 int main( int argc, char *argv[] )
@@ -237,7 +236,7 @@ void vg_update(void)
        glm_translate_z( m_view, -10.f );
        glm_rotate_x( m_view, 1.0f, m_view );
        
-       glm_mat4_mul( m_projection, m_view, m_pv );
+       glm_mat4_mul( m_projection, m_view, vg_pv );
        
        // Get mouse ray
        vec3 ray_origin;
@@ -245,7 +244,7 @@ void vg_update(void)
        
        mat4 pv_inverse;
        vec4 vp = { 0.f, 0.f, vg_window_x, vg_window_y };
-       glm_mat4_inv( m_pv, pv_inverse );
+       glm_mat4_inv( vg_pv, pv_inverse );
        glm_unprojecti( (vec3){ vg_mouse_x, vg_window_y-vg_mouse_y, -1.f }, pv_inverse, vp, ray_dir );
        glm_unprojecti( (vec3){ vg_mouse_x, vg_window_y-vg_mouse_y, 0.f }, pv_inverse, vp, ray_origin );
        glm_vec3_sub( ray_dir, ray_origin, ray_dir );
@@ -262,6 +261,8 @@ void vg_update(void)
        int tile_y = floorf( tile_pos[2] );
        
        map.selected = map_tile_at( (int [2]){tile_x, tile_y} );
+       
+       vg_line2( (vec3){0.f,0.f,0.f}, (vec3){0.f,3.f,0.f}, 0xff0000ff, 0xff00ff00 );
 }
 
 GLuint tile_vao;
@@ -275,8 +276,10 @@ void vg_render(void)
        glClearColor( 0.94f, 0.94f, 0.94f, 1.0f );
        glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
        
+       glBindVertexArray( tile_vao );
+       
        SHADER_USE( colour_shader );
-       glUniformMatrix4fv( SHADER_UNIFORM( colour_shader, "uPv" ), 1, GL_FALSE, (float *)m_pv );
+       glUniformMatrix4fv( SHADER_UNIFORM( colour_shader, "uPv" ), 1, GL_FALSE, (float *)vg_pv );
        
        for( int y = 0; y < map.y; y ++ )
        {