void ft_raycasting(t_pos *wolf) { while (wolf->val2->x < wolf->val->w) { wolf->val->camerax = 2 * wolf->val2->x / wolf->val->w - 1; wolf->val->rayposx = wolf->val->posx; wolf->val->rayposy = wolf->val->posy; wolf->val->raydirx = wolf->val->dirx + wolf->val->planex * wolf->val->camerax; wolf->val->raydiry = wolf->val->diry + wolf->val->planey * wolf->val->camerax; wolf->val->mapx = (int)wolf->val->rayposx; wolf->val->mapy = (int)wolf->val->rayposy; wolf->val->deltadistx = sqrt(1 + (wolf->val->raydiry * wolf->val->raydiry) / (wolf->val->raydirx * wolf->val->raydirx)); wolf->val->deltadisty = sqrt(1 + (wolf->val->raydirx * wolf->val->raydirx) / (wolf->val->raydiry * wolf->val->raydiry)); wolf->val2->hit = 0; ft_calcul_step(wolf); ft_check_square(wolf); ft_project(wolf); wolf->val2->h = SCREEN_Y; wolf->val2->lineheight = (int)(wolf->val2->h / wolf->val2->perpdist); ft_calcul(wolf); ft_put_pix(wolf); wolf->val2->x++; } }
int main(int argc, char **argv) { int i; int arg1; int arg2; if(argc != 4) { ft_putchar('\n'); return (0); } arg1 = atoi(argv[1]); arg2 = atoi(argv[3]); ft_calcul(arg1, arg2, argv[2]); return (0); }