/* ************************************************************************** */ /* */ /* ::: :::::::: */ /* parsing_camera.c :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: yantoine +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/02/14 20:02:29 by yantoine #+# #+# */ /* Updated: 2025/02/15 19:43:52 by yantoine ### ########.fr */ /* */ /* ************************************************************************** */ #include "miniRT.h" t_scene parsing_camera(const char *line, t_scene scene) { const char **tokens = get_tokens_secure(scene, scene.numCamera, MAX_CAMERA, 4); scene.token_if_exit = tokens; scene.camera.camPos = parse_vector(tokens[1], scene); scene.camera.camDir = parse_vector_normalize(tokens[2], scene); scene.camera.fov = ft_atof(tokens[3]); scene.camera.yaw = atan2f(camDir.x, -camDir.z); scene.camera.pitch = asinf(camDir.y); ft_free_array(tokens); scene.numCamera++; return (scene); }