AnimationController
*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.
Un objet qui permet d'importer et d'appliquer des animations à un personnage ou à un modèle à la place d'un Humanoid .Crée un Animator et charge des animations pour mettre à jour Motor6Ds le personnage dit pour réagir de la manière décrite dans la ressource d'animation référencée par un objet Animation.
Notez que la méthode LoadAnimation() de cette classe a été marquer comme obsolète.Au lieu de cela, vous devez appeler Animator:LoadAnimation() directement à partir d'un Animator qui peut être créé manuellement dans Studio et référencé directement dans les scripts.Lorsque la méthode obsolète est appelée à partir d'un AnimationController , le contrôleur lui-même ne fait rien concernant l'animation destinée à être chargée, sauf de générer automatiquement une Animator , sur laquelle l'appel de chargement et l'ID d'animation sont transférés.De cette façon, le AnimationController peut être pensé comme rien de plus qu'une coquille vide pour un objet enfant Animator qui gère toute fonctionnalité réelle en matière d'animations.
Échantillons de code
This code sample demonstrates how an AnimationController can be used in place of a Humanoid for non player character objects.
A basic rig is loaded using InsertService and the default Humanoid is replaced with an AnimationController. An AnimationTrack is then created and played.
local InsertService = game:GetService("InsertService")
-- Load a model for demonstration
local npcModel = InsertService:LoadAsset(516159357):GetChildren()[1]
npcModel.Name = "NPC"
npcModel.PrimaryPart.Anchored = true
npcModel:SetPrimaryPartCFrame(CFrame.new(0, 5, 0))
npcModel.Parent = workspace
-- Replace the humanoid with an animationcontroller
local humanoid = npcModel:FindFirstChildOfClass("Humanoid")
humanoid:Destroy()
local animationController = Instance.new("AnimationController")
animationController.Parent = npcModel
-- Create and load an animation
local animation = Instance.new("Animation")
animation.AnimationId = "http://www.roblox.com/asset/?id=507771019" -- Roblox dance emote
local animationTrack = animationController:LoadAnimation(animation)
-- Play the animation
animationTrack:Play()