diff --git a/src/twn_input.c b/src/twn_input.c index cc00eca..8f258d9 100644 --- a/src/twn_input.c +++ b/src/twn_input.c @@ -233,7 +233,8 @@ void input_state_update(InputState *input) { SDL_GetRelativeMouseState(&x, &y); input->mouse_relative_position = (Vec2){ (float)x, (float)y }; - ctx.game.mouse_position = input->mouse_window_position; + ctx.game.mouse_position.x = ((float)input->mouse_window_position.x - ctx.viewport_rect.x) / ctx.viewport_scale; + ctx.game.mouse_position.y = ((float)input->mouse_window_position.y - ctx.viewport_rect.y) / ctx.viewport_scale; if (ctx.window_mouse_resident) ctx.game.mouse_movement = input->mouse_relative_position;