From 808e106f787a1825d46b36015efc4d019145d37c Mon Sep 17 00:00:00 2001 From: jacob Date: Wed, 13 Mar 2024 23:17:07 -0500 Subject: [PATCH] draw debug lines on screen canvas --- src/user.c | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/src/user.c b/src/user.c index c61ab22d..fd55d1e7 100644 --- a/src/user.c +++ b/src/user.c @@ -348,39 +348,39 @@ INTERNAL struct v2 view_inverse_xform_basis_v2(struct view view, struct v2 p) /* TODO: remove this (testing) */ INTERNAL void debug_draw_xform(struct xform xf) { - f32 thickness = 2.f / PIXELS_PER_UNIT / L.world_view.zoom; - f32 arrowhead_len = 15.f / PIXELS_PER_UNIT / L.world_view.zoom; + f32 thickness = 2.f; + f32 arrowhead_len = 15.f; u32 color = RGBA_F(0, 1, 1, 0.3); u32 color_x = RGBA_F(1, 0, 0, 0.3); u32 color_y = RGBA_F(0, 1, 0, 0.3); - struct v2 pos = xf.og; - struct v2 x_ray = xform_get_right(xf); - struct v2 y_ray = xform_get_up(xf); + struct v2 pos = view_xform_v2(L.world_view, xf.og); + struct v2 x_ray = view_xform_basis_v2(L.world_view, xform_get_right(xf)); + struct v2 y_ray = view_xform_basis_v2(L.world_view, xform_get_up(xf)); struct quad quad = quad_from_rect(RECT(0, 0, 1, -1)); quad = quad_mul_xform(quad_scale(quad, 0.075), xf); - draw_solid_arrow_ray(L.world_canvas, pos, x_ray, thickness, arrowhead_len, color_x); - draw_solid_arrow_ray(L.world_canvas, pos, y_ray, thickness, arrowhead_len, color_y); - draw_solid_quad(L.world_canvas, quad, color); + draw_solid_arrow_ray(L.screen_canvas, pos, x_ray, thickness, arrowhead_len, color_x); + draw_solid_arrow_ray(L.screen_canvas, pos, y_ray, thickness, arrowhead_len, color_y); + draw_solid_quad(L.screen_canvas, quad, color); } /* TODO: remove this (testing) */ INTERNAL void debug_draw_movement(struct entity *ent) { - f32 thickness = 2.f / PIXELS_PER_UNIT / L.world_view.zoom; - f32 arrow_len = 15.f / PIXELS_PER_UNIT / L.world_view.zoom; + f32 thickness = 2.f; + f32 arrow_len = 15.f; u32 color_vel = RGBA_F(1, 0.5, 0, 1); u32 color_acc = RGBA_F(1, 1, 0.5, 1); - struct v2 pos = ent->world_xform.og; - struct v2 vel_ray = ent->velocity; - struct v2 acc_ray = ent->acceleration; + struct v2 pos = view_xform_v2(L.world_view, ent->world_xform.og); + struct v2 vel_ray = view_xform_basis_v2(L.world_view, ent->velocity); + struct v2 acc_ray = view_xform_basis_v2(L.world_view, ent->acceleration); - draw_solid_arrow_ray(L.world_canvas, pos, vel_ray, thickness, arrow_len, color_vel); - draw_solid_arrow_ray(L.world_canvas, pos, acc_ray, thickness, arrow_len, color_acc); + draw_solid_arrow_ray(L.screen_canvas, pos, vel_ray, thickness, arrow_len, color_vel); + draw_solid_arrow_ray(L.screen_canvas, pos, acc_ray, thickness, arrow_len, color_acc); } INTERNAL void user_update(void)