Animator

Afficher les obsolètes

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

La classe principale responsable de la lecture et de la réplication de Animations . Tout le répliènement de la lecture de AnimationTracks est géré à travers l'instance Animator.

Voir également Éditeur d'animation et Utiliser les animations pour apprendre à créer et ajouter des animations pré-construites ou personnalisées à votre jeu.

Résumé

Propriétés

Méthodes

Évènements

Propriétés

EvaluationThrottled

Lecture uniquement
Non répliqué
Non navigable
Écrire en parallèle

PreferLodEnabled

Lecture parallèle

RootMotion

Lecture uniquement
Non répliqué
Non navigable
Écrire en parallèle

RootMotionWeight

Lecture uniquement
Non répliqué
Non navigable
Écrire en parallèle

Méthodes

ApplyJointVelocities

void

En fonction de la table actuelle de AnimationTracks jouant, et de leurs temps et vitesses de jeu actuels, calculez les vitesses de rotation entre les parties et appliquez-les à Motor6D.Part1 (la partie qui Animator prend en compte la partie « enfant »). Ces calculs de vitesse relative et d'attributs se produisent dans l'ordre fourni.

Cette méthode ne s'applique pas aux vitesses pour un joint donné si les parties du articulationsont actuellement partie de la même assemblée, par exemple, s'ils sont toujours connectés directement ou indirectement par des moteurs ou des soudures.

Cette méthode ne désactive pas ou n'enlève pas les jointures pour vous. Vous devez désactiver ou autrement enlever les jointures rigides de l'assemblage avant d'appeler cette méthode.

Les Motor6Ds donnés ne sont pas requis pour être les descendants du DataModel . Enlèvement des joints du DataModel avant d'appeler cette méthode est pris en charge.

Paramètres

motors: Variant

Retours

void

GetPlayingAnimationTracks

Renvoie la liste des pistes actuellement jouées AnimationTracks .


Retours

LoadAnimation

Cette fonction charge le Animation donné sur ce Animator, en retournant une animation jouable AnimationTrack. Lorsqu'elle est appelée sur un 2>Class.Animator2> dans les modèles que le client a la propriété réseau, par exemple le personnage du joueur local ou à partir de 5>Class.BasePart:SetNetworkOwner

Vous devriez utiliser cette fonction directement au lieu des fonctions similairement nommées Humanoid:LoadAnimation() et AnimationController:LoadAnimation(). Ces sont des proxies dépréciés de cette fonction qui créent également un Animator si un tel n'existe pas ; cela peut causer des problèmes de réplication si vous n'êtes pas prudent.

Charger une animation sur le client ou le serveur

Pour que AnimationTracks puisse être répliqué correctement, il est important de savoir quand ils devraient être chargés sur le client ou sur le serveur :

  • Si un Animator est un descendant d'un Humanoid ou AnimationController dans un client du joueur, les animations commencent sur le client du joueur et se répliquent sur le serveur et sur d'autres clients.

  • Si le Animator n'est pas un descendant d'un personnage de joueur, ses animations doivent être chargées et commencées sur le serveur pour être répliquées.

L'objet Animator doit être créé initialement sur le serveur et répliqué aux clients pour que la réplication d'animation fonctionne du tout. Si un Animator est créé localement, alors AnimationTracks chargé avec ce 2>Class.Animator2> ne se répliquera pas.

Paramètres

animation: Animation

Le Animation à utiliser.


Retours

RegisterEvaluationParallelCallback

void

Paramètres

callback: function

Retours

void

StepAnimations

void
Sécurité des plugins

Augmente le AnimationTrack.TimePosition de tous les jeux AnimationTracks chargés sur le Animator, en appliquant les décalages à l'échelle du modèle associé au 1> Class.Animator1>. Pour l'utiliser dans la barre de commandes ou par le plugin uniquement.

Le paramètre DeltaTime détermine le nombre de secondes à ajouter sur la progression de l'animations. Habituellement, cette fonction est appelée en boucle pour prévisualiser la longueur d'une animation (voir exemple).

Remarquez que lorsque les animations ont cessé de jouer, les jointures du modèlisationdevront être manuellement réinitialisées à leur position d'origine (voir l'exemple).

Cette fonction est utilisée pour simuler le playback de Animations lorsque le jeu n'est pas en cours d'exécution. Cela permet aux animations d'être prévisualisées sans les conséquences de l'exécution du jeu, telles que les scripts s'exécutant. Si la fonction est appelée pendant que le jeu s'exécute, ou par Scripts ou par <

Les développeurs qui conçoivent leurs propres éditeurs d'animation personnalisée sont conseillés d'utiliser cette fonction pour prévisualiser les animations, car c'est la méthode que l'éditeur d'animation officiel Roblox utilise.

Paramètres

deltaTime: number

La durée de génération de l'animation en secondes est à augmenter.


Retours

void

Échantillons de code

Preview Animation in Studio

local RunService = game:GetService("RunService")
local function studioPreviewAnimation(model, animation)
-- find the AnimationController and Animator
local animationController = model:FindFirstChildOfClass("Humanoid")
or model:FindFirstChildOfClass("AnimationController")
local animator = animationController and animationController:FindFirstChildOfClass("Animator")
if not animationController or not animator then
return
end
-- load the Animation to create an AnimationTrack
local track = animationController:LoadAnimation(animation)
track:Play()
-- preview the animation
local startTime = tick()
while (tick() - startTime) < track.Length do
local step = RunService.Heartbeat:wait()
animator:StepAnimations(step)
end
-- stop the animation
track:Stop(0)
animator:StepAnimations(0)
-- reset the joints
for _, descendant in pairs(model:GetDescendants()) do
if descendant:IsA("Motor6D") then
local joint = descendant
joint.CurrentAngle = 0
joint.Transform = CFrame.new()
end
end
end
local character = script.Parent
local animation = Instance.new("Animation")
animation.AnimationId = "rbxassetid://507765644"
studioPreviewAnimation(character, animation)

Évènements

AnimationPlayed

Démarre tous les AnimationTrack:Play() appels sur AnimationTracks créés et possédés par l'animateur.

Paramètres

animationTrack: AnimationTrack