coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 2 nov. 2004 à 19:02
tu peux décomposer ton mouvement en plusieurs faces : tu bouges de 1 un certain nombre de fois... C a dire que tu metrais ton code actuel de mouvement dans une fonction et que tu appelerais cette fonction un certain nombre de fois en fonction de la vitesse...
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 2 nov. 2004 à 20:17
oui
mais t'es pas obligé de réafficher le perso, tu peux très bien ne faire que le déplacement for (i=0;i<vitesse;i++){x=x+xd;y=y+yd;z=z+zd; test();} affperso(); voila grossièrement...
luhtor
Messages postés2023Date d'inscriptionmardi 24 septembre 2002StatutMembreDernière intervention28 juillet 20086 2 nov. 2004 à 20:59
Oue mais sans rafficher le perso, ca va demander des beaucoup plus de tests de collision. Si il n'y a qu'un personnage ca va aller, mais si il y a 200 ou 1000 particules, ca va plus le faire :) Mais le
Vous n’avez pas trouvé la réponse que vous recherchez ?
luhtor
Messages postés2023Date d'inscriptionmardi 24 septembre 2002StatutMembreDernière intervention28 juillet 20086 2 nov. 2004 à 21:00
Je voulais dire, le problème des collisions est un gros problème pour tous les gens. Et passer a travers les murs a grandes vitesses, ca arrive souvent dans les jeux.
goutbouyo
Messages postés429Date d'inscriptionmardi 6 juillet 2004StatutMembreDernière intervention12 janvier 2008 2 nov. 2004 à 23:42
J'ai fait un test :
Je charge une petite map avec peu de textures : FPS 160> pas de problème de collisions
Je charge une autre map plus grande avec pas mal de textures : FPS 60.> je passe à travers les murs ...
Donc mon problème est lié à la vitesse d'affichage.
Si l'affichage est rapide, la position est vite mise à jour, donc je passe pas à travers les murs.
Par contre si l'affichage est plus lent, la positiosn sur l'écran est mise à jour moins souvent, donc elle est moins précise => je passe à travers les murs.
Vous pensez que c'est ça ???
luhtor
Messages postés2023Date d'inscriptionmardi 24 septembre 2002StatutMembreDernière intervention28 juillet 20086 3 nov. 2004 à 12:23
Ca ne fait que déplacer le problème, des que tu chargeras un peu plus la map, ton fps va descendre et tu traverseras les murs. Ou alors, si tu tests ton programme si une plus petite machine. J'ai le meme problème avec mon programme.
La solution est ce que dit Coucou747 finalement. Mais il faut le faire d'une manière dynamique, c'est à dire plus l'objet va vite, plus faut décomposer son mouvement entre deux images, de sortes que sa position entre deux décompositions ne puissent pas etre supérieur à ta marge de détection de collision, (ici 1 ou 5 comme tu l'a fais).
Je pense que je vais faire un algo de ce type. Je vois pas d'autre solution.