| problème de vitesse | |
|
|
Auteur | Message |
---|
gaeris Pas mal
Messages : 35 Localisation : à [Nom de village imprononçable]
| Sujet: problème de vitesse Ven 6 Juil 2012 - 23:07 | |
| bonjour voici mon problème : Dans mon jeu vu du dessus, mon objet à une variable qui définit sa hauteur par rapport au sol que j'utilise pour le draw du sprite qui à une position différente en fonction de la hauteur car l'objet lui est toujours au sol (mais invisible) et continue sur sa trajectoire rectiligne. La variable hauteur varie comme si elle été influencé par la gravité : une autre variable qui varie de -5 à 5 détermine la hauteur gagnée/perdue à chaque step. Ma question est donc : comment faire varier la vitesse au sol pour que le draw de mon objet ai une vitesse (speed + hauteur) constante ? J'espère avoir été assez clair, c'est un problème pas facile à expliquer et merci d'avance. |
|
| |
Pixel-boy Utilisateur confirmé: Rang *
Messages : 270
| Sujet: Re: problème de vitesse Sam 7 Juil 2012 - 1:58 | |
| Je suis pas sur d'avoir compris la question, tu peux essayer d'être plus clair ? |
|
| |
gaeris Pas mal
Messages : 35 Localisation : à [Nom de village imprononçable]
| Sujet: Re: problème de vitesse Sam 7 Juil 2012 - 10:17 | |
| ok je la refait en image la flèche rouge montre le trajet de l'objet et la flèche bleue la variable hauteur que j'utilise pour le sprite. le problème c'est que quand la hauteur varie la plus, quand l'objet monte ou tombe, les différentes parties (d'autres objets) sont trop espacés (entouré en jaune) je voudrais que la vitesse associée à la variation de hauteur forme une vitesse constante. |
|
| |
Pixel-boy Utilisateur confirmé: Rang *
Messages : 270
| Sujet: Re: problème de vitesse Sam 7 Juil 2012 - 12:56 | |
| Ok j'ai compris le problème, mais je suis pas sur d'avoir compris ce que tu voulais, tu veux que l'objet se déplace toujours à la même vitesse en hauteur genre 1 ? |
|
| |
D-z Utilisateur confirmé: Rang *****
Messages : 1611 Localisation : Montpellier
| Sujet: Re: problème de vitesse Sam 7 Juil 2012 - 13:17 | |
| Je pense que ça rendrait mieux si tu laissais le moteur physique tel quel (ça serait bizarre un truc qui saute sans gravité...), et modifier le moteur graphique pour que les parties du corps se suivent à distance constante. Voici un objet de test : Create : - Code:
-
trail_length = 16; // Nombre de rotules part_radius = 24; // Distance entre les centres de deux rotules
trail_x[0] = mouse_x; trail_y[0] = mouse_y;
var i; for( i = 0; i < trail_length; i += 1 ) { trail_x[i + 1] = x; trail_y[i + 1] = y; } End Step : - Code:
-
trail_x[0] = mouse_x; trail_y[0] = mouse_y;
var i, vx, vy, vn; for( i = 0; i < trail_length; i += 1 ) { vx = trail_x[i + 1] - trail_x[i]; // Le vecteur représentant la position de la rotule vy = trail_y[i + 1] - trail_y[i]; // par rapport à la précédente vn = sqrt( vx * vx + vy * vy ); // Sa norme if( vn > part_radius ) { // Si la rotule est trop éloignée de la précédente trail_x[i + 1] = trail_x[i] + vx * part_radius / vn; // On la replace par rapport à celle-ci trail_y[i + 1] = trail_y[i] + vy * part_radius / vn; } } Draw : - Code:
-
var i; for( i = 0; i <= trail_length; i += 1 ) { draw_circle( trail_x[i], trail_y[i], 16, true); } _________________ Home is not a place, it's a feeling.
|
|
| |
gaeris Pas mal
Messages : 35 Localisation : à [Nom de village imprononçable]
| Sujet: Re: problème de vitesse Sam 7 Juil 2012 - 17:57 | |
| merci D-z ! je vais voir ce que j'arrive à faire grâce à ton exemple. |
|
| |
gaeris Pas mal
Messages : 35 Localisation : à [Nom de village imprononçable]
| Sujet: Re: problème de vitesse Dim 8 Juil 2012 - 18:20 | |
| J'ai juste quelques questions à propos de ton code :
1- la distance max entre 2 rotules peut être plus grande en x qu'en y ?
2- la dernière rotule est-elle obligatoirement celle qui a le depth le plus faible ? dans le cas de l'image que j'ai envoyé, il serait préférable que les dernière rotules soit derrière les autres.
3- toujours dans le cas de mon image, mon objets est censé sortir du sol et y retourner, peut-on rendre invisible une partie ou la totalité des rotules en fonction d'une variable ?
4- peut-on changer la sprite de la rotule en fonction de sa position dans l'ensemble et d'une variable ? |
|
| |
D-z Utilisateur confirmé: Rang *****
Messages : 1611 Localisation : Montpellier
| Sujet: Re: problème de vitesse Sam 21 Juil 2012 - 13:25 | |
| Pour ta première question : tu peux bidouiller la ligne - Code:
-
vn = sqrt( vx * vx + vy * vy ); // Sa norme En appliquant une échelle aux deux axes, je pense que c'est ce que tu veux dire. Mais une solution peut-être plus judicieuse serait de faire ce traitement à l'affichage (le serpent est animé dans son propre repère, puis projeté dans le repaire de l'écran). Pour tes trois questions suivantes : mon algo te fournit les positions des rotules dans l'ordre de la tête à la queue, à toi de voir ce que tu en fais, tu peux parcourir le tableau à rebours pour inverser l'ordre d'affichage, effectuer un check pour n'afficher que les rotules au-dessus du sol, etc. Libre à toi ;) Et mes excuses pour le temps de réponse, je rentre de 10 jours loin de chez moi, dans un petit village paradisiaque du nom de Taizé _________________ Home is not a place, it's a feeling.
|
|
| |
gaeris Pas mal
Messages : 35 Localisation : à [Nom de village imprononçable]
| Sujet: Re: problème de vitesse Dim 22 Juil 2012 - 13:01 | |
| - Citation :
- Et mes excuses pour le temps de réponse
Pas de problème, c'était pas urgent. Et merci de ta réponse. |
|
| |
Contenu sponsorisé
| Sujet: Re: problème de vitesse | |
| |
|
| |
| problème de vitesse | |
|