Bonjour à toutes et tous.
Voilà quelques semaines que j'ai décidé de me former à l'UE4 et de tenter de réaliser un premier et modeste projet de jeu.
Aujourd'hui, pour la première fois, je rencontre un os que je ne parviens pas à résoudre seul, ni avec l'aide des multiples tutos et sujets épluchés sur le net (français et anglais).
J'ai donc l'espoir que quelqu'un sache m'éclairer de son expérience, ici, sur ce qui me pose problème aujourd'hui.
Alors voici la situation, assez simple sur le papier :
Je souhaite déclencher, en début d'un niveau (branchement sur un eventbeginplay), la mise en mouvement d'une multitude d'instances d'un même static mesh, mais de façon désynchronisée.
Le mouvement est très simple et correspond simplement à la modification de l'altitude de chacune de ces instances avec déplacement simple selon Z (X et Y verrouillés).
Evidemment, si l'on oublie la volonté de désynchroniser le déclenchement de ces déplacements pour chaque instance, réaliser une telle animation ne me pose pas de problème. De même, s'il s'agissait de déclencher ces déplacements en boucle, instance après instance, cela ne poserait pas de problème non plus.
Cependant le rendu que je désire atteindre est de déclencher la mise en mouvement de ces instances ni en simultanée, ni non plus l'une après l'autre mais un peu comme le décollage de plusieurs fusées aléatoirement déclenchées dans une range de délai spécifiée.
Ainsi, cela revient à vouloir lancer une deuxième fusée (donc un second déplacement) alors que le premier est encore en cours. Et ceci pour un certain nombre de fusée (plusieurs dizaines).
Voici le code tel que je comprends bien qu'il ne peut pas fonctionner, ou tout du moins pas comme je le souhaite. Ici la timeline est lue en "updatant" l'ensemble des "locations" des différents instances sélectionnées aléatoirement parmi le pool spécifié. En d'autres termes, car je crains de ne pas être très clair, l'ensemble du déplacement total Z déclenché par la timeline se répartit aléatoirement sur l'ensemble des instances.
Je crois comprendre, à présent que je cerne un peu mieux le node timeline, qu'il est juste impossible d'en utiliser une seule pour animer en désynchronisés plusieurs instances de mon mesh puisque lancer une nouvelle animation coupera immédiatement le flux de sortie de l'animation déjà en cours. Il semble donc obligatoire d'attendre que chaque animation soit achevée pour en déclencher une nouvelle...
Ma question finale est donc la suivante : Suis-je obligé de créer un même code adapté autant de fois que nécessaire pour chacune de mes instances (96 à l'heure actuelle o_O') ou existe-t-il une fonction ou une technique qui permette de réaliser l'équivalent d'une timeline mais qui enverrait un flux indépendant chaque fois qu'on lui en demande un supplémentaire ?
Certes, une demande copieuse en lécture, mais j'essaye de me montrer suffisamment clair pour ne pas vous faire perdre votre temps à devoir déchiffrer la demande... mais ça n'est peut-être pas encore gagné
Quoi qu'il en soit, merci pour le temps que vous pourrez m'accorder sur ce sujet.
Et bonne année à toutes et tous.
Partager