void ft_draw_scnd_quad(img_var img, fdf_var lst) { if (-img.x >= img.y) { img.e = img.x; while (img.x1-- > img.x2) { ft_img_pixel_put(img, lst, img.x1, img.y1); img.e = img.e + img.dy; if (img.e >= 0) { img.y1++; img.e = img.e + img.dx; } } return ; } img.e = img.y; while (img.y1++ < img.y2) { ft_img_pixel_put(img, lst, img.x1, img.y1); img.e = img.e + img.dx; if (img.e <= 0) { img.x1--; img.e = img.e + img.dy; } } }
void ft_drawpixel(t_raytracer *raytracer, int x) { int color; int i; i = -1; if (raytracer->side == 0 && raytracer->mapx > 0) color = 0xE78F8E; else if (raytracer->side == 0 && raytracer->mapx <= 0) { color = 0xB3CDD1; } else if (raytracer->side == 1 && raytracer->mapy > 0) color = 0xfec057; else color = 0xACD8AA; if (raytracer->map[raytracer->mapx][raytracer->mapy] == 2) color = 0x000000; while (++i < raytracer->drawstart) ft_img_pixel_put(raytracer, x, i, 0xB0E0E6); i--; while (++i <= raytracer->drawend && i < raytracer->env.win_h) ft_img_pixel_put(raytracer, x, i, color); i--; while (++i < raytracer->env.win_h) ft_img_pixel_put(raytracer, x, i, 0x693300); }