Raycasting en C, un peu perdu
Bonjour à tous!
Mon école veut que je crée un "Wolf3D" en l'honneur du célèbre jeu. J'ai donc discuter durant des heures avec mon ami google, mais je continue à souffrir... J'ai trouvé un tutoriel très intéressant (Tuto Raycasting), mais je suis perdu à un moment.
Je ne comprends pas l'idée du casting, donc l'"envoie" d'un rayon pour calculer la distance du mur ou objet. D'un point de vue 3D, je comprends l'idée, mais je ne vois pas comment faire en C pour simuler cela.
J'ai codé une map (char **map), que j'ai mallocer de la largueur de la map(soit 50 pour le moment), et biensur j'ai mallocer chaque sous partie par 50 aussi.
Ca donne à peu près:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| char **creat_map(char **map)
{
int i;
i = 0;
map = malloc(sizeof(*map) * (50 + 1));
/*ici je vérifie le retour de malloc*/
while (i < 50)
{
map[i] = malloc(sizeof(**map) * (50 + 1));
i++;
}
return (map)
} |
Je cherche pas à ce que vous me donniez le code complet, mais des indices pour que j'avance dans mon projet. Je suis un peu pressé mais ça c'est de ma faute. ^^"
Donc je reformule, quelqu'un pourrait-il m'aider sur l'idée d'envoyer un rayon pour calculer la distance entre la camera et le mur, s'il vous plaît. :)
Merci d'avance. ^^