La vidéo d' Overgrowth Alpha 132 montre comment ils ont mis en œuvre l'escalade de corniche.
Leur méthode devrait fonctionner dans n'importe quel moteur, même les moteurs 2D où vous utiliseriez un rectangle et un cercle au lieu d'un cylindre et d'une sphère.
Leur détection de rebord comprend deux parties:
Détection de mur (à l'aide de la sphère)
Le jeu vérifie si le joueur entre actuellement en collision avec un mur. S'il y a un mur, il peut y avoir des rebords sur lesquels le joueur peut s'accrocher. La deuxième partie prend le relais pour analyser les corniches.
Détection de rebord (à l'aide du cylindre)
Si le joueur entre en contact avec un mur, un cylindre est balayé vers le bas à partir d'une certaine distance au-dessus de la position du joueur jusqu'à ce qu'il touche un rebord. Cela détermine trois choses:
Si un rebord existe au-dessus du joueur
La hauteur du rebord
S'il y a de la place pour que le joueur monte sur le rebord, étant donné que le cylindre occupe le même espace horizontal que le joueur.
"un cylindre est balayé vers le bas à partir d'une certaine distance au-dessus de la position du joueur" Quelle distance? Ceci est très important dans les environnements intérieurs (vous couperiez le plafond par accident).
Tara
1
@Dudeson dans le passé, j'ai utilisé un raycast pour trouver initialement la surface du rebord, avant de faire un suivi du volume pour vérifier qu'il y a suffisamment d'espace libre pour grimper. Puisque le raycast est directionnel, il ne lit pas les plafonds comme de faux positifs - bien qu'il puisse toujours être accroché à l'étage suivant si l'origine est beaucoup trop élevée .. Les mesures exactes dépendront de beaucoup de détails de chaque jeu - le taille des caractères, portée des bras, dégagement dans la conception du niveau, vitesses de chute, etc.
Réponses:
La vidéo d' Overgrowth Alpha 132 montre comment ils ont mis en œuvre l'escalade de corniche.
Leur méthode devrait fonctionner dans n'importe quel moteur, même les moteurs 2D où vous utiliseriez un rectangle et un cercle au lieu d'un cylindre et d'une sphère.
Leur détection de rebord comprend deux parties:
Détection de mur (à l'aide de la sphère)
Le jeu vérifie si le joueur entre actuellement en collision avec un mur. S'il y a un mur, il peut y avoir des rebords sur lesquels le joueur peut s'accrocher. La deuxième partie prend le relais pour analyser les corniches.
Détection de rebord (à l'aide du cylindre)
Si le joueur entre en contact avec un mur, un cylindre est balayé vers le bas à partir d'une certaine distance au-dessus de la position du joueur jusqu'à ce qu'il touche un rebord. Cela détermine trois choses:
la source