Événements d'animation

*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.

Vous pouvez définir des marqueurs d'animation événement à travers l'intervalle de temps et utiliser GetMarkerReachedSignal() pour détecter ces marqueurs lorsque l'animation s'exécute.

Afficher les événements

Par défaut, la piste d'événement n'est pas visible. Pour afficher la piste d'événement :

  1. Naviguez à droite de la timeline , puis cliquez sur l'icône Équipement . Un menu contextuel s'affiche.

  2. Sélectionnez Afficher les événements d'animation . Cela ouvre la barre Événements d'animation directement en dessous des contrôles de lecture et de lecture de médias.

Vous pouvez maintenant créer , détecter et dupliquer événements.

Créer des événements

Les marqueurs d'événement sont des indicateurs visuels de l'endroit où une animation commence.Après avoir créé un marqueur d'événement, vous pouvez le déplacer à n'importe quelle position sur la timeline.

Pour créer un nouveau marqueur d'événement :

  1. Accédez à la timeline , puis cliquez et faites glisser le tamponneur à la position du cadre où l'événement devrait survernir.

  2. Accédez à la piste d'événements événement , puis cliquez sur le bouton éditer les événements d'animation . La boîte de dialogue éditer les événements d'animation s'affiche.

  3. Dans la boîte de dialogue Éditer les événements d'animation , cliquez sur + Ajouter événement , puis entrez un nom d'événement.

  4. (Facultatif) Dans le champ paramètre , entrez une chaîne de paramètre pour l'événement.

  5. Cliquez sur le bouton enregistrer . Dans la barre d'événements dans la timeline, un nouveau symbole de marqueur s'affiche à la position du cadre.

Détecter des événements

Pour détecter les événements d'animation dans un LocalScript , connectez une fonction à la fonction GetMarkerReachedSignal() de AnimationTrack . Par exemple :


local Players = game:GetService("Players")
local player = Players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
local humanoid = character:WaitForChild("Humanoid")
local animator = humanoid:WaitForChild("Animator")
-- Créer une nouvelle instance "Animation"
local walkAnim = Instance.new("Animation")
-- Définir son "AnimationId" à l'ID de ressource d'animation correspondant
walkAnim.AnimationId = "rbxassetid://5432167890"
-- Charger l'animation sur l'animateur
local walkAnimTrack = animator:LoadAnimation(walkAnim)
-- Relier l'événement "GetMarkerReachedSignal" à un image-clénommé spécifique
walkAnimTrack:GetMarkerReachedSignal("FootStep"):Connect(function(paramString)
print(paramString)
end)

Événements en double

Lorsque vous créez des événements, ils deviennent disponibles pour leur utilisation tout au long de l'animations, pas seulement à la position du cadre où vous les avez initialement créés.Par instance, vous pouvez créer un marqueur d'événement "Pas à pas" au point où le pied d'un personnage gauche touche le sol, puis utiliser le même événement lorsque le pied droit du personnage tombe .

Pour dupliquer un événement :

  1. Accédez à la timeline , puis cliquez sur un marqueur d'événement dans la barre d'événements .

  2. Appuyez sur CtrlC ( C sur Mac).

  3. Cliquez et faites glisser le tamponneur à la position du cadre où vous voulez dupliquer l'événement.

  4. Appuyez sur CtrlV ( V sur Mac).

Si l'événement original utilise un paramètre mais que l'événement dupliqué doit utiliser un paramètre modifié, effectuez les étapes suivantes :

  1. Faites un clic droit sur le marqueur d'événement dupliqué. Un menu contextuel s'affiche.
  2. Sélectionnez Éditer l'animation Événement. Le dialogue Éditer événements d'animation s'affiche.
  3. Faites vos modifications, puis cliquez sur le bouton enregistrer .