Bonsoir,
Je vous présente la deuxième partie de la série sur l'intelligence artificielle pour les jeux vidéo : Partie 2 : Perceptions et Pathfinding
Envoyé par Synopsis
Bonsoir,
Je vous présente la deuxième partie de la série sur l'intelligence artificielle pour les jeux vidéo : Partie 2 : Perceptions et Pathfinding
Envoyé par Synopsis
Bonjour,
Je suis tombé par hasard sur cet article.
L'article est plutôt pas mal rédigé. Par contre dans un article traitant des jeux vidéos il faut absolument appliquer les bonnes pratiques de coding.
Dans l'exemple de code on peut voir ^^ :
ect. ect. ect.[/SIZE][/SIZE]
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 Unchecked[0].s.x = sx; Unchecked[0].s.y = sy; Unchecked[0].d = abs(sx - gx) + abs(sy - gy); Unchecked[0].p.x = -1; Unchecked[0].p.y = -1; Unchecked[0].used = 1; Unchecked[0].steps = 0; ... /*tile to the left*/ if((Unchecked[u].s.x - 1) >= 0)/*first, make sure we're on the map*/ { if((IsInList(Unchecked,Unchecked[u].s.x - 1,Unchecked[u].s.y,NULL) == 0)&&(IsInList(Checked,Unchecked[u].s.x - 1,Unchecked[u].s.y,NULL) == 0)) /*make sure we don't repeat a search*/ { if(TileValid(Unchecked[u].s.x - 1,Unchecked[u].s.y,team)) NewtoList(Unchecked,Unchecked[u].s.x - 1,Unchecked[u].s.y, Unchecked[u].s.x, Unchecked[u].s.y, abs((Unchecked[u].s.x - 1) - gx) + abs(Unchecked[u].s.y - gy), Unchecked[u].steps + 1); } }
Pour une question de persfs, dans les exemples, il faut absolument passer par une référence intermédiaire :
ect. ect. ect.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 $my_object = Unchecked[0]; $my_object.s.y = sy; $my_object.d = abs(sx - gx) + abs(sy - gy); $my_object.p.x = -1; $my_object.p.y = -1; $my_object.used = 1; $my_object.steps = 0; if(($my_object.s.x - 1) >= 0)/*first, make sure we're on the map*/
Non.
Le code est clairement du C, les références n'existent pas.
Et toi tu nous proposes... du mauvais PHP en guise de "mieux" !?!?T'as peur de rien..
C'est en plus 800% inutile ici puisque c'est une variable accédée directement, le compilateur saura très bien l'optimiser. Une référence c'est utile quand tu dois récupérer un objet via des méthodes. Pour une variable dans le même scope, c'est juste un sucre syntaxique.
Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
Un peu de programmation réseau ?
Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.
Partager