2009-07-09 5 views
2

J'essaie de faire un jeu de plateforme 3D simple. Le problème que j'ai est avec la détection de collision et la réponse. Je représente actuellement mon personnage de joueur (pour les collisions entre les murs et le sol) avec une sphère. J'utilise une simple force de gravité et des forces directionnelles en utilisant les touches fléchées pour le mouvement.Bonne représentation de collision de personnage de joueur dans le jeu de plate-forme 3D?

Mon problème se produit quand je viens à un bord (comme une falaise). Je glisse sur le bord comme une balle, mais le comportement que je cherche est de tomber du bord comme un cylindre droit. Un booléen "Je suis sur la plate-forme, ou je ne suis pas sur la plate-forme", et non "Je glisse sur le bord progressivement". Le problème avec l'utilisation d'un vérin vertical est que l'escalier coulissant devient automatiquement impossible, et lorsque vous marchez le long d'une pente, le vérin ne doit toucher qu'une seule arête ou être partiellement encastré dans la pente.

Qu'est-ce qu'une bonne représentation de la collision du personnage du joueur dans un jeu de plateforme 3D?

Répondre

1

Vous pouvez conserver la sphère pour la détection de collision.

Et si vous trouvez une collision, alors vous devriez calculer plus précisément pour la collision, en divisant votre personnage en plusieurs composants. Une solution courante consiste à utiliser une sphère (car la collision est facile à calculer) pour la tête, le tronc et un cylindre pour les jambes et les bras (vous pouvez également ajouter une sphère pour les mains et les pieds).

Avez-vous la possibilité de lire this book?

1

Essayez un ellipsoïde oblat. Étirez simplement la sphère le long de l'axe vertical.

0

Il semble que votre solution idéale serait un cylindre vertical avec des bords arrondis. Il basculerait encore sur les bords droits, mais les bords arrondis vous permettraient de monter les escaliers. Vous devrez peut-être jouer avec le rayon d'arrondi afin d'obtenir l'effet que vous voulez.

Questions connexes