Ok, alors considérons que nous avons un véhicule comme celui que j'ai décrit dans ma réponse à cette question , avec une position 2D, une vitesse, une vitesse angulaire et une traînée / friction. Il peut accélérer et casser d'une quantité variable, mais pas s'arrêter instantanément ou atteindre la vitesse de pointe instantanément. Comment puis-je le faire se déplacer vers un point particulier et s'arrêter - dans le temps le plus rapide possible - sans dépassement ni oscillation?
Je pensais à quelque chose comme:
- tourner vers la position cible.
- accélérer
- regardez 1 tick en avant, demandant "Si j'appliquais les breaks au tick suivant, est-ce que je dépasserais la cible?"
- S'il surpassait, appliquez maintenant les pauses d'un certain montant.
Je suis sûr que c'est un problème résolu et il existe probablement une meilleure méthode que celle que j'ai décrite.