J'essaie de créer un jeu 3D simple et j'ai besoin de contraindre le joueur dans les limites du monde du jeu. Lorsque le joueur touche les côtés du monde, je veux que le vaisseau du joueur rebondisse légèrement.
En effet j'essaie de piéger le joueur dans une boîte, et de l'empêcher de s'échapper par les côtés ...
J'ai réussi à définir les limites du monde du jeu comme une collection d'avions, avec des normales et des distances depuis l'origine. Le joueur a une sphère englobante sphérique et en suivant ce site Web http://www.gamasutra.com/view/feature/3383/simple_intersection_tests_for_games.php, j'ai réussi à détecter les collisions.
Je ne peux maintenant pas vraiment savoir quoi faire lorsqu'une collision est détectée. Le mieux que je puisse gérer est que le joueur reste coincé dans l'avion, le traverse directement ou rebondisse à plusieurs reprises à un rythme très rapide.
Le bon sens me dit que je dois calculer l'angle réfléchi par rapport à l'avion, en utilisant sa normale et l'appliquer à la vitesse du joueur, mais je pense que je dois d'abord voir si le joueur a traversé l'avion, ce qui est le bit que je ne peux pas faire des exercices.