From 58fffa5507995a5bded3fa695bc4521068a2b281 Mon Sep 17 00:00:00 2001 From: hgn Date: Fri, 13 Dec 2024 01:53:01 +0000 Subject: [PATCH] add roll to camera calculation --- vg_camera.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/vg_camera.c b/vg_camera.c index 8cd261f..3828645 100644 --- a/vg_camera.c +++ b/vg_camera.c @@ -40,11 +40,13 @@ void vg_m4x3_transform_camera( m4x3f m, vg_camera *cam ) */ void vg_camera_update_transform( vg_camera *cam ) { - v4f qyaw, qpitch, qcam; + v4f qyaw, qpitch, qroll, qcam; q_axis_angle( qyaw, (v3f){ 0.0f, 1.0f, 0.0f }, -cam->angles[0] ); q_axis_angle( qpitch, (v3f){ 1.0f, 0.0f, 0.0f }, -cam->angles[1] ); + q_axis_angle( qroll, (v3f){ 0.0f, 0.0f, 1.0f }, -cam->angles[2] ); q_mul( qyaw, qpitch, qcam ); + q_mul( qcam, qroll, qcam ); q_m3x3( qcam, cam->transform ); v3_copy( cam->pos, cam->transform[3] ); } -- 2.25.1