rtv1/src/main.c

50 lines
1.7 KiB
C

/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* main.c :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: gbrochar <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2019/02/06 10:11:19 by gbrochar #+# #+# */
/* Updated: 2019/02/22 08:38:14 by gbrochar ### ########.fr */
/* */
/* ************************************************************************** */
#include "rtv1.h"
void init_env(t_env *e)
{
e->func.intersect_obj[PLANE] = &intersect_plane;
e->func.intersect_obj[SPHERE] = &intersect_sphere;
e->func.intersect_obj[CYLINDER] = &intersect_cylinder;
e->func.intersect_obj[CONE] = &intersect_cone;
e->func.normal_obj[PLANE] = &normal_plane;
e->func.normal_obj[SPHERE] = &normal_sphere;
e->func.normal_obj[CYLINDER] = &normal_cylinder;
e->func.normal_obj[CONE] = &normal_cone;
}
int main(int ac, char *av[])
{
t_env e;
if (ac == 2)
if (SUCCESS == parse(av[1], &e))
if (SUCCESS == init_mlx(&e))
{
init_env(&e);
raytrace(&e);
mlx_loop(e.mlx.ptr);
}
else
free_parsing(&e);
else
{
free_parsing(&e);
ft_putendl("file is not valid");
}
else
ft_putendl("usage: ./rtv1 scene_file");
return (0);
}