50 lines
1.7 KiB
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);
|
|
}
|