AccueilAccueil  FAQFAQ  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  Connexion  

 

 Physic 2d moto

Aller en bas 
2 participants
AuteurMessage
Oculus
Utilisateur confirmé: Rang *****



Messages : 1688

Physic 2d moto Empty
MessageSujet: Physic 2d moto   Physic 2d moto EmptyLun 14 Mar 2011 - 21:30

Salut à tous !

J'aimerais essayer de faire un jeu de type moto trials...
Le problème c'est que je bloque pour la physic de la moto, enfaite je ne sais pas trop comment m'y prendre.
J'ai créer 2 roues puis je calcul l'angle du corps de la moto mais je pense pas que se soit la meilleur façon, j'ai chercher des exemples mais la plus part des liens sont mort ou utilise des dll (type gmphysic) ce que je ne veux pas faire car je voudrais après adapter le moteur en purebasic.

@+
Revenir en haut Aller en bas
Vivi
Utilisateur confirmé: Rang **
Vivi


Messages : 321
Localisation : dans ma chambre
Projet Actuel : ogc²

Physic 2d moto Empty
MessageSujet: Re: Physic 2d moto   Physic 2d moto EmptyMar 15 Mar 2011 - 14:02

Ayant fait un jeu du genre il y a longtemps je peux te donner la logique à avoir:
En gros tu pars du cadre qui a une vecteur de vitesse et une force de rotation (torque)
donc le but c'est de trouver la force à ajouter à ces 2 valeurs en fin de step.
La dynamique d'une moto est basée sur ses suspensions. Donc dans une suspension on a deux chose : un ressort et un amortisseur
Donc ton but c'est de trouver l'état de ces suspension à partir de la on peux retrouver les valeurs précédemment citée.
Donc tu met les roue à la position ou elle devrait être si les suspensions étaient relâchées au max et puis tu les remonte dans le sens de la suspension jusqu'a ce que plus collision. tu déduis donc l'état de la suspension appelons la susp1 et susp2.
Pour faire les calcule d'amortissement tu as besoin de la valeur précédente des suspensions soit psusp1 et psusp2.
Maintenant on cherche la force que génère chaque suspension. (0 relaché + appuyée)
facile :
v1=susp1*f1+(psusp1-susp1)*f2
v2=susp2*f1+(psusp2-susp2)*f2

f1 c'est la puissance des ressort, f2 des amortisseurs
maintenant qu'on a ça on peut calculer les forces générée sur le cadre.
(v1 la suspension avant et v2 l'arrière)
torque=(v1-v2)*f3

f=(v1+v2)*f4

ensuite tu utilise f pour modifier hspeed et vspeed en fonction de l'angle du cadre.
et torque tu fais un truc du genre image_angle+=torque

Faut aussi trouver tout les facteurs.

Donc ces calcules sont des approximations et ne donneront pas un résultat qu'on pourrait obtenir avec un moteur physique mais ça s'en rapproche.

Ah et aussi ça tient en compte une moto avec 2 suspension et qui est parfaitement symétrique sur l'axe y si tu vois ce que je veux dire, normalement il faudrait traiter l'arrière différemment (c'est pas très compliqué en gros c'est juste la roue qui bouge différemment, les fonctions d'amortissement restent identique).

Et le problème le plus gênant c'est les collisions frontale, Si tu fais bêtement que monter la roue tu pourrais avec des exagération, je sais plus comment j'avais géré ça. Il me semble que ce que j'avais fait c'est pas tenir en compte le sens de la suspension et faire une sorte de move_contact, et tu prend la distance du move comme valeur de suspension.

Et pour finir ; le jeu que j'avais fait qui utilise cette technique (donc sans moteur physique) : Super Motocross 2008 (non j'ai plus la source)

Bonne chance happy1
Revenir en haut Aller en bas
http://www.opengamecreator.com
Oculus
Utilisateur confirmé: Rang *****



Messages : 1688

Physic 2d moto Empty
MessageSujet: Re: Physic 2d moto   Physic 2d moto EmptyMar 15 Mar 2011 - 20:23

Merci ! C'est super sympa, j'ai mieux compris le truck maintenant.
Revenir en haut Aller en bas
Contenu sponsorisé





Physic 2d moto Empty
MessageSujet: Re: Physic 2d moto   Physic 2d moto Empty

Revenir en haut Aller en bas
 
Physic 2d moto
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» info sur GM physic
» [problème réglé] Gm physic 4 Triangle
» Moto X
» Sprite Moto
» saut de la moto...

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Le CBNA :: Développement :: Entraide confirmés-
Sauter vers: