J'ai travaillé sur un projet de base de style FPS (en utilisant beaucoup de conseils que j'ai trouvé de caché ici) et j'ai rencontré un problème.Babylon.js et Cannon.js caméra et collisions de murs bugs
est ici le code, premier off- https://www.babylonjs-playground.com/#GYZQLK#3
Utilisez les touches fléchées pour déplacer la caméra vers l'avant jusqu'à ce que vous frappez le mur, et vous verrez mon problème.
Je suis en train de
- ont un mécanisme de saut naturel et
- ont la détection de collision entre la caméra, sol, murs, etc.
Au début, je l'ai fait juste en utilisant les .checkCollisions natives de Babylon, qui fonctionne très bien pour les collisions entre caméras et objets et entre caméras et murs. Cependant, je ne pouvais pas obtenir cela pour fonctionner correctement pour sauter. Même après les tutoriels d'autres, (http://www.html5gamedevs.com/topic/12198-camera-jump/) je n'obtenais pas les résultats que je voulais; Sur mon ordinateur, au moins, tous ces esquisses de terrain de jeu «pendent» en haut du saut jusqu'à ce que d'autres flèches soient pressées. Donc, j'ai changé de vitesse et j'ai essayé d'utiliser Oimo et Cannon (individuellement) pour une physique plus robuste. Je n'arrive toujours pas à faire fonctionner Oimo, pour une raison ou pour une autre ("this.world.worldscale n'est pas une fonction", je ne trouve rien là-dessus) mais j'ai eu des résultats décents avec Cannon. En bref, j'ai le saut de travail, mais maintenant les collisions contre les murs sont ... funky.
Je suis plutôt bloqué. Je ne vois pas comment cette détection de collision est différente de celle entre le sol et la caméra, mais quelque chose est évidemment éteint. J'ai essayé avec d'autres objets horizontaux (boîtes, sphères) et j'ai obtenu les meilleurs résultats en plaçant l'imposteur physique de la caméra dans une boîte (ce qui rend le tout nerveux).
Des idées ou des idées? Merci a tous!