Worldedit
  Worldedit
Le site sur l'éditeur de warcraft 3 !
 
  FAQFAQ   RechercherRechercher   Liste des MembresListe des Membres    Groupes d'utilisateursGroupes d'utilisateurs   medals.php?sid=9039078a6fdb214383b646c4068e0801Médailles   S'enregistrerS'enregistrer 
 ProfilProfil   Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés   ConnexionConnexion 
  FAQFAQ World Editor   UploadUploader une map ou une image    UploadAjouter sa map à l'annuaire   UploadConsulter l'annuaire

Mouvement de projectile
Aller à la page 1, 2, 3  Suivante
 
Poster un nouveau sujet   Répondre au sujet    Worldedit Index du Forum -> Aide sur les déclencheurs
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
 Sapeur-Goblin
Floodeur prématuré


Inscrit le: 14 Oct 2009
Messages: 719
Sujets: 40
Spécialité en worldedit: Les bugs
Médailles: 1 (En savoir plus...)
Créateur d'unité (Quantité : 1)

MessagePosté le: 28/04/12 14:54    Sujet du message: Mouvement de projectile Citer

Salut,
En ce moment je suis en train de faire une fonction (ou plutôt de l'améliorer) permettant de créer des projectiles, et de les lancer sur des unités. Pour que ce soit réaliste, j'essaie d'y ajouter des arcs.
Pour cela, je n'ai pour l'instant trouvé qu'une solution :
- On calcule la distance dmax entre le point de départ et l'unité cible ainsi que la distance d entre le point de départ et le projectile
- On fait le ratio d/dmax, ce qui donne le pourcentage de progression du projectile
- Ensuite, on utilise une fonction mathématique, utilisant soit le sinus et cosinus, soit une fonction du type ax²+bx+c.
Cette technique fonctionne si la cible est fixe, ou si sa vitesse est inférieure à celle du projectile. Par contre, lorsqu'elle bouge trop brutalement (téléportation par exemple), ou qu'elle va plus vite que le projectile, le ratio d/dmax n'augmente plus de manière continue, et l'arc n'en est plus vraiment un.
J'aimerais savoir s'il existe une autre méthode, et je sais qu'il en existe une puisque dans le système de Tirlititi, ça fonctionne Wink. Par contre j'ai pas compris comment tu faisais.
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 kungfu-sheep
Anomalie floodiforme


Inscrit le: 14 Avr 2011
Messages: 1846
Sujets: 119
Spécialité en worldedit: fonctions paramétriques, équation de mouvement.


MessagePosté le: 28/04/12 15:01    Sujet du message: Citer

bin ton dmax devient inférieur à d si il bouge trop brutalement. donc ton ratio flanche.

essaye peut être de relancer dmax si d>dmax
_________________
22:27:43<Seiraw> Bah y a deux genre de personnes
22:27:57<Seiraw> les soumis et les soumises
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Envoyer l'e-mail
 Sapeur-Goblin
Floodeur prématuré


Inscrit le: 14 Oct 2009
Messages: 719
Sujets: 40
Spécialité en worldedit: Les bugs
Médailles: 1 (En savoir plus...)
Créateur d'unité (Quantité : 1)

MessagePosté le: 28/04/12 15:06    Sujet du message: Citer

Fulldragon a écrit:
essaye peut être de relancer dmax si d>dmax

?

Par contre je pense qu'il faut utiliser une tout autre technique.
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 kungfu-sheep
Anomalie floodiforme


Inscrit le: 14 Avr 2011
Messages: 1846
Sujets: 119
Spécialité en worldedit: fonctions paramétriques, équation de mouvement.


MessagePosté le: 28/04/12 15:13    Sujet du message: Citer

si d>dmax
dmax = distance entre tes 2 points

à partir de la le ratio reste inférieur à 1 et donc tu as une courbe potentiellement plus propre.

par contre j'viens d'y repenser en cas de tp ça remet des discontinuité :/
_________________
22:27:43<Seiraw> Bah y a deux genre de personnes
22:27:57<Seiraw> les soumis et les soumises
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Envoyer l'e-mail
 Sapeur-Goblin
Floodeur prématuré


Inscrit le: 14 Oct 2009
Messages: 719
Sujets: 40
Spécialité en worldedit: Les bugs
Médailles: 1 (En savoir plus...)
Créateur d'unité (Quantité : 1)

MessagePosté le: 28/04/12 15:15    Sujet du message: Citer

Oui, et c'est pire lorsque la cible est plus proche du point de lancement que le projectile : sa hauteur devient négative...
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 kungfu-sheep
Anomalie floodiforme


Inscrit le: 14 Avr 2011
Messages: 1846
Sujets: 119
Spécialité en worldedit: fonctions paramétriques, équation de mouvement.


MessagePosté le: 28/04/12 15:26    Sujet du message: Citer

oO prend une fonction strictement positive déjà ça ira mieux x)
_________________
22:27:43<Seiraw> Bah y a deux genre de personnes
22:27:57<Seiraw> les soumis et les soumises
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Envoyer l'e-mail
 Sapeur-Goblin
Floodeur prématuré


Inscrit le: 14 Oct 2009
Messages: 719
Sujets: 40
Spécialité en worldedit: Les bugs
Médailles: 1 (En savoir plus...)
Créateur d'unité (Quantité : 1)

MessagePosté le: 28/04/12 15:29    Sujet du message: Citer

Ouais, bon, qu'il soit en-dessous de la map ou à terre, ça change pas grand chose^^.
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 kungfu-sheep
Anomalie floodiforme


Inscrit le: 14 Avr 2011
Messages: 1846
Sujets: 119
Spécialité en worldedit: fonctions paramétriques, équation de mouvement.


MessagePosté le: 28/04/12 15:43    Sujet du message: Citer

(chuis plus intéressé par ton problème que le mien, que j'ai résolu au passage juste faut que j'le fasse maintenant x))
euhhh... ok solution plus recherché :

tu prends uniquement la distance max entre les deux et tu choisis une hauteur max.
de la tu calcules la vitesse pour prendre de l'altitude et en perdre.
tu lances le mouvement avec les données que tu as calculé et que tu as déjà.
tu check si l'unité visé change de place
si il change de place tu recalcules la vitesse en tenant compte de son altitude actuel.
si tu n'as pas compris j'te fais un schéma.
_________________
22:27:43<Seiraw> Bah y a deux genre de personnes
22:27:57<Seiraw> les soumis et les soumises
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Envoyer l'e-mail
 Sapeur-Goblin
Floodeur prématuré


Inscrit le: 14 Oct 2009
Messages: 719
Sujets: 40
Spécialité en worldedit: Les bugs
Médailles: 1 (En savoir plus...)
Créateur d'unité (Quantité : 1)

MessagePosté le: 28/04/12 16:14    Sujet du message: Citer

Euh non, j'ai pas totalement saisi Wink.
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Tirlititi



Inscrit le: 21 Fév 2010
Messages: 1785
Sujets: 22
Spécialité en worldedit: La modestie
Médailles: 1 (En savoir plus...)
Grand mage créateur de sort (Quantité : 1)

MessagePosté le: 28/04/12 16:26    Sujet du message: Citer

Mon système est un peu différent puisqu'il utilise un système de vitesse de rotation. C'est utile pour moi parce que je veux faire en sorte que le projectile puisse rater sa cible, mais si tu veux pas, faut utiliser une autre méthode.

Bon, c'est des maths alors j'ai pas envie de t'expliquer comment faut faire en saupoudrant le tout de "c'est très simple". J'avais donné une fonction jass à RGF qui voulait faire la même chose mais je la retrouve pas. Si il la retrouve, lui, ce serait sympa qu'il la post ^^. Sinon j'en ferai une autre.

À moins que tu veuilles inclure la possibilité de rater la cible?
_________________
Warcraft III, c'était mieux avant. Y'avait des purs chefs-d'oeuvres du mapping !
Road Of Glory (par moi)
Casse-briques (par moi)
Temple de Glace (par moi)
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 kungfu-sheep
Anomalie floodiforme


Inscrit le: 14 Avr 2011
Messages: 1846
Sujets: 119
Spécialité en worldedit: fonctions paramétriques, équation de mouvement.


MessagePosté le: 28/04/12 16:31    Sujet du message: Citer


après :
Valtitude = 2*hauteurMax/(temps que le projectil met pour parcourir dmax qu'on va appeler T)
T = dmax/VitesseProjectil

tu relances à chaque déplacement de l'unité les formules en tenant compte de l'altitude actuelle de ton projectil c'est à dire :
hauteurRestant = hauteurMax - hauteurActuel

seulement tout ça gère que la monté. pour la descente tu check quand il arrive à hauteurMax et tu fais le strict inverse.
_________________
22:27:43<Seiraw> Bah y a deux genre de personnes
22:27:57<Seiraw> les soumis et les soumises
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Envoyer l'e-mail
 Sapeur-Goblin
Floodeur prématuré


Inscrit le: 14 Oct 2009
Messages: 719
Sujets: 40
Spécialité en worldedit: Les bugs
Médailles: 1 (En savoir plus...)
Créateur d'unité (Quantité : 1)

MessagePosté le: 28/04/12 16:33    Sujet du message: Citer

Non, les projectiles doivent toucher leurs cibles, comme les projectiles de blizzard. Et après on peut toujours rajouter un petit texte flottant "raté".
Sinon pas la peine de refaire une fonction, juste m'expliquer le principe suffira (enfin je pense Wink).

Edit : Je viens de voir ton poste full. Mais cette méthode a les même inconvénients que la mienne, encore pire, la forme de l'arc est carrée.
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 kungfu-sheep
Anomalie floodiforme


Inscrit le: 14 Avr 2011
Messages: 1846
Sujets: 119
Spécialité en worldedit: fonctions paramétriques, équation de mouvement.


MessagePosté le: 28/04/12 16:37    Sujet du message: Citer

tient quand j'y repense on peut encore faire mieux (perso j'avais fait ça pour un autre truc car j'avais la flemme de faire mieux)

tu génères la fonction mathématique qui colle en fonction des données que tu as. si tu vois pas c'que j'veux dire j'te le démontre. (tir va encore dire que j'dis n'importe quoi x))
_________________
22:27:43<Seiraw> Bah y a deux genre de personnes
22:27:57<Seiraw> les soumis et les soumises
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Envoyer l'e-mail
 Troll-Brain
Ri1kamoua


Inscrit le: 23 Aoû 2007
Messages: 7146
Sujets: 147
Spécialité en worldedit: le troll, le flood, la vulgarité, mon coeur balance
Médailles: 2 (En savoir plus...)
Rédacteur de tuto #3 (Quantité : 1) Grand mage créateur de sort (Quantité : 1)

MessagePosté le: 28/04/12 17:39    Sujet du message: Citer

J'ai une solution :

Quand une unité se fait attaquer, tu l'empêches de se déplacer tant qu'elle n'a pas été touché par le projectile.
La victime consentante est un concept très utilisé dans les films d'horreurs, peut être cela vaut t'il le coup de l'implanter dans wc3.

Sinon, sérieusement je me demandes comment wc3 gère cela tient, je veux dire j'ai jamais fait gaffe, il se passe quoi avec un projectile qui suit une unité, si l'unité est "tp" entre temps, ca reste fluide comme résultat ?
Evidemment faut que le projectile soit suffisamment lent pour que cela soit visible.
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 kungfu-sheep
Anomalie floodiforme


Inscrit le: 14 Avr 2011
Messages: 1846
Sujets: 119
Spécialité en worldedit: fonctions paramétriques, équation de mouvement.


MessagePosté le: 28/04/12 17:52    Sujet du message: Citer

sur icegliders je sais que les spells restent fluide après un tp.
pour le reste ça dépend du type d'ttaque. parfois le projectile va se crasher dans un endroit improbable de la map où la cible n'y ai pas vraiment avec une altitude bizarre (notamment pour le projectile type catapulte) sinon ça suit l'unité ciblé (genre l'attaque de la liche)
dans tout les cas ça affecte la cible.
_________________
22:27:43<Seiraw> Bah y a deux genre de personnes
22:27:57<Seiraw> les soumis et les soumises
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Envoyer l'e-mail
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    Worldedit Index du Forum -> Aide sur les déclencheurs Toutes les heures sont au format GMT + 1 Heure
Aller à la page 1, 2, 3  Suivante
Page 1 sur 3

 
Sauter vers:  
Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum


Powered by phpBB © 2001, 2005 phpBB Group
Traduction par : phpBB-fr.com