/* ************************************************************************** */ /* */ /* ::: :::::::: */ /* ft_sort_s_t.c :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: rbousset +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2020/02/24 20:22:45 by rbousset #+# #+# */ /* Updated: 2020/03/09 18:56:01 by rbousset ### ########lyon.fr */ /* */ /* ************************************************************************** */ #include #include #include static void ft_init_st(uint16_t sprite_var, int32_t st_o[8]) { int8_t i; i = -1; while (++i < sprite_var) st_o[i] = i; } void ft_sort_s_t(t_cub *cl, float dist_tab[8][4096]) { int16_t i; int32_t tmp; float tmp_i[4096]; i = -1; ft_init_st(cl->mlist.sprite_var, cl->mlist.st_o); while (++i < cl->mlist.sprite_var) if (dist_tab[i][0] < dist_tab[i + 1][0]) { tmp = cl->mlist.st_o[i]; cl->mlist.st_o[i] = cl->mlist.st_o[i + 1]; cl->mlist.st_o[i + 1] = tmp; ft_memcpy(tmp_i, dist_tab[i], 4096); ft_memcpy(dist_tab[i], dist_tab[i + 1], 4096); ft_memcpy(dist_tab[i + 1], tmp_i, 4096); i = -1; } }