J'ai besoin de faire pivoter un sprite de personnage en fonction de la portée de la plate-forme sur laquelle il (un rectangle) se tient ou marche. J'ai réussi l'effet en le faisant tourner selon la pente de la plate-forme sur laquelle il se tient. Mais il y a deux problèmes:Comment faire pivoter en douceur un personnage en fonction de la pente sur laquelle il marche?
D'abord, la rotation n'est pas lisse. Lorsque le personnage passe d'une plate-forme plate à une plate-forme inclinée, il pivote instantanément et, grâce à cette rotation, il est légèrement soulevé. Deuxièmement, une fois qu'il quitte la pente et revient sur une plate-forme plate, je ne peux pas faire pivoter le personnage en conséquence. C'est parce qu'à ce moment le personnage entrerait en collision avec une plate-forme plate et une plate-forme inclinée (elles sont placées ensemble), donc pour quelques pas le personnage tournera follement d'avant en arrière parce que deux fonctions de détection de collision travaillent ensemble. J'ai essayé de le résoudre en détectant la face du personnage et d'essayer de trouver quel point (gauche ou droite) de lui touche quelque chose en premier, mais ça ne fonctionnait pas, parce que je ne peux détecter que la collision, mais pas "no collision" ou "quand un personnage quitte une plateforme".
J'ai joint une illustration de la situation. S'il vous plaît, aidez, merci!
PS: Comme je ne suis pas autorisé à publier des images, veuillez visiter: http://i.stack.imgur.com/jqPjt.png pour l'image. Merci.
Si vous ne faites aucune manipulation spéciale, vous obtiendrez le cas sur la gauche ... non? Que se passe-t-il si vous laissez juste le moteur faire son truc? – iforce2d
@ iforce2d: J'ai essayé ça ... mais la force que j'applique dessus provient du centre du rectangle, non du bas, donc quand il frappe une pente il va rouler vers l'avant (au lieu de reculer) . Une autre chose est que ce jeu est une sorte de jeu de plateforme, donc je ne veux pas que le personnage puisse tourner librement. – Dai