Partage
  • Partager sur Facebook
  • Partager sur Twitter

passé ma variable d'un blueprint a l'autres UE4

Debutant

Sujet résolu
    25 juin 2018 à 10:41:53

    Bonjour,

    je voudrais savoir comment passé ma variable d'un blueprint a l'autres sur Unreal Engine 4 .

    j aimerais relier ma variable pour pouvoir prendre la position de base de mon static mesh .

    j'ai tenté diverses choses appel de fonction depuis un cast to ou encore directement de la variable.

    mais a chaque fois la même erreur surgi.

    je ne comprend pas trop l'erreur en plus car je suis vraiment la personnes la moins doué en anglais.

    mes 2 blueprint son de class actor.

    voici un exemple basique de se que je voudrais faire .

    L'erreur retourné :

    Le blueprint de class actor 1 :

    Le blueprint de class actor 2 :

    -
    Edité par NicolasDreux 25 juin 2018 à 10:42:39

    • Partager sur Facebook
    • Partager sur Twitter
      25 juin 2018 à 16:56:23

      Bonjour, cela fait quelques temps que j'ai arreté d'utiliser UE4, mais je vais quand même t'aider.

      Le système de passage de variables sous UE4 se fait effectivement via les un cast to.
      Il nécessite donc d'indiquer (a gauche) l'objet sur lequel il agit.

      Pour ton exemple de "cast to perso", tu as effectivement cast lorsque quelque chose entre dans la zone de collision (box) mais ton cast ne renvoie rien. Pour faire simple tu n'as rien relié en bas a droite de ton cast (As Perso).

      Voici un exemple (de souvenir) d'une bonne utilisation du cast :

      N'hésite pas à regarder des tutos sur internet. Même si l'anglais peux te rechigner, il existe quelques rares bons tutos tels que "creerunjeuxvideo"

      PS : Je ne sais pas si c'était voulu, mais dans tes exemples, tu as utilisé des relative Location et je doute que c'est ce que tu souhaitais utiliser. Les Locations relative utilise la location d'un Composant dans son acteur. Si tu veux utiliser la Location absolue (donc la location dans le monde). Il te faudra utiliser "get actor Location" et "set actor Location".

      RE-PS: Relis toi avant de poster, ta question comporte beaucoup de fautes.

      -
      Edité par coukil 25 juin 2018 à 16:58:50

      • Partager sur Facebook
      • Partager sur Twitter
        25 juin 2018 à 19:26:25

        Merci pour ta réponse je t'avoue que je ne comprend pas trop ou tu veut en venir mais mon cast to perso fonctionne bien le problème viens pas de lui

        mais de mon cast to actor1 j aimerais pouvoir utiliser la variable qui se trouve dans mon blueprint Actor1 d'ou le cast to actor1 .

        j'ai commeme tenté se que tu me proposé mais sa me retourne toujours une erreur ....

        -
        Edité par NicolasDreux 25 juin 2018 à 19:31:55

        • Partager sur Facebook
        • Partager sur Twitter
          27 juin 2018 à 0:04:33

          Bonjour,

          1)déja tu n'a pas connecté ton code à ton "cast to Actor1", donc il ne se lancera jamais. Pour faire simple tu n'as pas fait de connection (ligne blanche) entre "cast to perso" et "cast to Actor1".


          2)Ton cast to Actor possède un probleme de Object. Pour faire simple dans UE4, le cast possède deux entrées, l'activation (normale) et l'objet. L'objet permet de préciser de quel objet il s'agit.

          Par exemple si je veux faire un cast to chaise, le code ne comprendra pas de quelle chaise il s'agit (la mienne ou la tienne). Pour cela il faut préciser la reference de l'objet.

          Dans ton cas, tu as dis que la référence de ton Objet Actor1 est ton personnage. Or Actor1 n'est pas un personnage.

          J'ai du mal à comprendre ce que tu souhaite faire. Est ce que tu veux lancer un evenement lorsque ton personnage rentre dans la boite ou lorsque Actor1 entre dans la boite ? Si c'est pour Actor 1, tu peux tout simplement relier "Other Actor" de "On component Begin Overlap" à "Object" de "Cast to Actor1". Si ce n'est pas actor mais le personnage. Alors précise comment tu fais pour savoir de quel Actor1 tu parle car via le code interne d'un objet, il est compliqué de récuperer la réference d'un autre objet.

          PS: si tu souhaite t'entrainer au cast to, je te conseille plutôt de faire le code dans le Level Blueprint (Accessible depuis ton editeur de carte, en cliquant sur le bouton "BluePrint" (en haut au milieu) et "Open Level Blueprint". L'avantage du level blueprint est que tu peux avoir accès aux réference de chaque objet (vu qu'ils font partie du level) tout simplement en cliquant sur l'objet de ta scène (donc dans ta map) puis click droit et "Create a reference to ...".

          De plus, je ne vois pas à quoi sert ton Timer dans ce code.

          • Partager sur Facebook
          • Partager sur Twitter
            27 juin 2018 à 10:39:36

            On avance un peu dans notre compréhension mon bute est de récupérer le static mesh de mon blueprint actor1.

            la référence est donc aussi mon static mesh appeler boite.

            donc si je tes bien compris je dois lui indiquer dans le paramètre objet de mon cast to actor1 la référence donc ma boite.

            sauf que ils me fait une erreur :

            • Partager sur Facebook
            • Partager sur Twitter
              27 juin 2018 à 16:29:17

              Bonjour,

              tu tente d'appeler un cast to sur une boite dans ton Acteur, or dans ton Acteur, il n'y a pas de boite.

              Plutot que de t'expliquer avec un vocabulaire technique, je te montre le bon procédé en image pour (de ce que j'ai compris), le cas de téléporter Actor1 à Actor2

              Ps : pour la deuxieme image, mettre l'oeil ouvert sur la variable Actor permet de rendre visible la variable depuis l'éditeur de niveau, et dans ce cas la pouvoir spécifier dans ton editeur de niveau de quel Actor tu parle (dans ce cas présent, le Actor1 présent dans la map).

              C'est pour cela que je conseillais de faire directement depuis le LevelBlueprint

              RE-PS: si tu veux que je t'aide efficacement, tente d'expliquer précisemment en un pavé lisible ce que tu souhaite faire.

              Edit : En réalité il ne téléporte pas Actor2 mais le mesh Sphere qui est à l'intérieur, donc techniquement, Actor2 est au même endroit

              -
              Edité par coukil 27 juin 2018 à 17:31:49

              • Partager sur Facebook
              • Partager sur Twitter
                27 juin 2018 à 18:19:31

                Re.

                je pense avoir compris la chose en gros la variable actor sers a relier les 2 blueprint ensemble pour pouvoir y récupéré la position sa fonctionne bien sauf que comme je dois indiquer a mon setworldlocation l’objet qui est ma boite bah la boite se déplace pas 

                • Partager sur Facebook
                • Partager sur Twitter
                  27 juin 2018 à 18:41:08

                  Vu ainsi, ton code semble fonctionner.Si ta boite ne se déplace pas, Tente de tester en cochant "teleport" sur "SetWorldLocation", sinon essaye d'utiliser des print pour voir l'état des variable.

                  Edit : il est préférable de changer la position de l'acteur plutot que le mesh qu'il contient, c'est peut être pour cela qu'il pourrait y avoir un problème

                  -
                  Edité par coukil 27 juin 2018 à 19:32:01

                  • Partager sur Facebook
                  • Partager sur Twitter
                    27 juin 2018 à 19:25:22

                    Re.

                    toujours rien avec teleport de cocher est tout s'active pourtant bien :(

                    • Partager sur Facebook
                    • Partager sur Twitter
                      4 septembre 2019 à 13:36:01

                      Merci déjà de cette aide, mais quand je fait un Cast To d'un ennemi (ThirdPersonCharacter renommé en BossZOmbieBP) je ne peux rien mettre dans Object (en bas à gauche) car je ne peux pas mettre Get Player Character parce que c'est un ennemi et non le joueur...

                      Vous aurez une solution ?

                      • Partager sur Facebook
                      • Partager sur Twitter

                      passé ma variable d'un blueprint a l'autres UE4

                      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                      • Editeur
                      • Markdown