From aedfd4e0a586ca134ee4a18f831cb658cff4e48b Mon Sep 17 00:00:00 2001 From: Lukas Jiriste Date: Wed, 8 Jan 2025 15:38:37 +0100 Subject: [PATCH] Add switching between cameras The key 'c' and 'x' cycle through cameras. A second camera is now in the test scene to demonstrate this. --- src/main.c | 4 ++++ test_scene.rt | 1 + 2 files changed, 5 insertions(+) diff --git a/src/main.c b/src/main.c index 2b27cb8..48321d6 100644 --- a/src/main.c +++ b/src/main.c @@ -221,6 +221,10 @@ int handle_key_press(int keycode, t_session *s) s->scene.current_light_ind = (s->scene.current_light_ind + s->scene.lights.size - 1) % s->scene.lights.size; s->scene.current_element = ft_vec_access(&s->scene.lights, s->scene.current_light_ind); } + else if (keycode == XK_c) + s->scene.current_camera_ind = (s->scene.current_camera_ind + 1) % s->scene.cameras.size; + else if (keycode == XK_x) + s->scene.current_camera_ind = (s->scene.current_camera_ind + s->scene.cameras.size - 1) % s->scene.cameras.size; if (keycode != XK_Escape && keycode != XK_o && keycode != XK_l && keycode != XK_k) draw(s); return (0); diff --git a/test_scene.rt b/test_scene.rt index db3edf2..3ade7e9 100644 --- a/test_scene.rt +++ b/test_scene.rt @@ -1,5 +1,6 @@ L 3,0,0 0.4 255,0,0 L 3,1,0 0.4 0,0,255 +C 2,0,0 1,0,-1 70 C 0,0,0 1,0,0 90 sp 3,0.5,-0.7 0.6 255,255,255 L 3,0.5,-0.5 0.01 0,255,0 -- 2.30.2