From 3e4ddda186b4cb72aade39a6f6ae6157d103a45f Mon Sep 17 00:00:00 2001 From: Charlie <66182434+asbott@users.noreply.github.com> Date: Mon, 1 Jul 2024 11:50:02 +0200 Subject: [PATCH] Rotations fixy smixy --- entry.c | 2 +- oogabooga/drawing.c | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/entry.c b/entry.c index 74c125a..7de7814 100644 --- a/entry.c +++ b/entry.c @@ -4,7 +4,7 @@ int start(int argc, char **argv) { window.title = fixed_string("My epic game"); - window.width = 400; + window.width = 700; window.height = 400; window.x = 200; window.y = 200; diff --git a/oogabooga/drawing.c b/oogabooga/drawing.c index 3c686b6..45256f8 100644 --- a/oogabooga/drawing.c +++ b/oogabooga/drawing.c @@ -123,12 +123,14 @@ Draw_Quad *draw_quad_projected(Draw_Quad quad, Matrix4 world_to_clip) { return &draw_frame.current->quad_buffer[draw_frame.current->num_quads-1]; } Draw_Quad *draw_quad(Draw_Quad quad) { - return draw_quad_projected(quad, m4_multiply(m4_inverse(draw_frame.view), draw_frame.projection)); + return draw_quad_projected(quad, m4_multiply(draw_frame.projection, m4_inverse(draw_frame.view))); } Draw_Quad *draw_quad_xform(Draw_Quad quad, Matrix4 xform) { - Matrix4 world_to_clip = m4_multiply(m4_inverse(draw_frame.view), xform); + Matrix4 world_to_clip = m4_scalar(1.0); world_to_clip = m4_multiply(world_to_clip, draw_frame.projection); + world_to_clip = m4_multiply(world_to_clip, m4_inverse(draw_frame.view)); + world_to_clip = m4_multiply(world_to_clip, xform); return draw_quad_projected(quad, world_to_clip); }