[RESOLU][DB -AL] distance entre le pivot de 2 rect transform

Pour les scripts écrits en C#
Règles du forum
Merci de respecter la NOMENCLATURE suivante pour vos TITRES de messages :

Commencez par le niveau de vos scripts
DB = Débutant
MY = Moyen
CF = Confirmé

Puis le domaine d'application
-RS = Réseau
-AL = Algorithmie

Exemple :

[DB-RS] Mouvement perso multijoueur
Avatar de l’utilisateur
Wamoga
Messages : 110
Inscription : 16 Jan 2018 14:56

[RESOLU][DB -AL] distance entre le pivot de 2 rect transform

Message par Wamoga » 19 Avr 2018 20:05

salut je cherche a comparer la position de 2 rect transform pour envoyer un trigger d'animation,
je souhaite que si les 2 objets sont a une distance comprise entre tant et tant alors elle lance l'animation sinon non

malheureusement les 2 objets ne sont pas dans les même parents et je n'arrive pas a savoir quelle valeur prendre,

Code : Tout sélectionner

    public Transform other;
    public Transform himself;

    public float maxDist;
    public float minDist;

    public bool AlreadyLaunched = false;

    void Update()
    {
        float distance = Vector3.Distance(other.position, himself.position);
      //      (Vector3 other, Vector3 himself);

        if (distance < maxDist && distance > minDist && AlreadyLaunched == false )
        {
            LaunchAnimation();
            AlreadyLaunched = true;
            Debug.LogError("OBJECT IS IN ");
        }
        else
        {
            AlreadyLaunched = false;
          //  Debug.LogError("OBJECT IS OUT ");
        }
    }

    void LaunchAnimation()
    {
        GetComponent<Animator>().SetTrigger("Play");

    }
}
je précise que le debug renvois toujours "object is out" même avec une valeur de 9999999

de ce que j'ai vu sur le net le recttransform est une sous classe du transform et on peut utiliser les mêmes méthodes mais je ne comprend pas quoi appeler.

Avatar de l’utilisateur
Wamoga
Messages : 110
Inscription : 16 Jan 2018 14:56

Re: [DB -AL] distance entre le pivot de 2 rect transform

Message par Wamoga » 19 Avr 2018 20:10

je suis partit de ca a la base,https://docs.unity3d.com/ScriptReferenc ... ance.html
et de ce que je comprend, Vector3.Distance fait la différence des positions monde, non ?

Avatar de l’utilisateur
Max
Messages : 8784
Inscription : 30 Juil 2011 13:57
Contact :

Re: [DB -AL] distance entre le pivot de 2 rect transform

Message par Max » 19 Avr 2018 20:40

Bonsoir,
Wamoga a écrit :
19 Avr 2018 20:05
salut je cherche a comparer la position de 2 rect transform pour envoyer un trigger d'animation,
je ne comprends pas vraiment. Tu utilises des RectTransform à la place de Transform sur des gameobject 3D ?
Dans le code que tu donnes, par contre tu définis des Transform (other et himself). J'ai du mal à suivre.
Wamoga a écrit :
19 Avr 2018 20:10
et de ce que je comprend, Vector3.Distance fait la différence des positions monde, non ?
Non, c'est juste un calcul de distance entre deux vecteur3D.
Image
Pas d'aide par MP, le forum est là pour ça.
En cas de doute sur les bonnes pratiques à adopter sur le forum, consulter la Charte et sa FAQ

Avatar de l’utilisateur
Wamoga
Messages : 110
Inscription : 16 Jan 2018 14:56

Re: [DB -AL] distance entre le pivot de 2 rect transform

Message par Wamoga » 19 Avr 2018 20:46

oui en fait c'est pour du menu
en gros une roue tourne et quand la pointe passe sur un point ( répartit autour du cercle ) il y'a une animation
tout est en 2D et en canvas

j'ai tenté de le faire par entertrigger a la base et je me suis bien cassé la gueule et j'ai jamais pu faire fonctionner le enter trigger avec le rect transform.
Max a écrit :
19 Avr 2018 20:40
Non, c'est juste un calcul de distance entre deux vecteur3D.
oui il calcul la différence des coordonnées sur x y z fait un petit calcul et donne la distance, c'est ce que je voulait dire par la ^^ l'important dans ma phrase était qu'il le fasse en monde et pas en local, c'est le cas ?

Avatar de l’utilisateur
Wamoga
Messages : 110
Inscription : 16 Jan 2018 14:56

Re: [DB -AL] distance entre le pivot de 2 rect transform

Message par Wamoga » 20 Avr 2018 10:27

après une nuit de sommeil je me suis rendu compte de mon imbécilité x)

j'ai travaillé le script avec les distance et j'ai mis des valeurs en pensant de manière a utiliser les coordonnées sans trop réfléchir sur ce que je mettait

j'avais donc mis 0.5-0.5 au lieu de 0.5-0 XD ca risquait pas de marcher x(

Avatar de l’utilisateur
Wamoga
Messages : 110
Inscription : 16 Jan 2018 14:56

Re: [DB -AL] distance entre le pivot de 2 rect transform

Message par Wamoga » 20 Avr 2018 10:28

d'ailleur en fait plus besoin de distance min

Répondre

Revenir vers « (C#) CSharp »