Ajouter des animations

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

Pour implémenter des animations dans le jeu, utilisez des scripts.Pour ce tutoriel, vous allez implémenter l'animation de victoire précédemment créée en utilisant un script pré-construit.Une fois terminée, cette animation peut être utilisée pour célébrer la réussite d'un joueur, comme atteindre la fin d'un obby ou trouver un secret.

Animations de scripts

Les animations sont déclenchées en utilisant scripts .Une approche consiste à utiliser des événements pour jouer des animations dans une variété de situations, comme un joueur terminant un niveau, vaincant un ennemi ou effectuant même un acheterdans le jeu.

Configurer le projet

Pour ce projet, vous créerez des parties qui, lorsqu'elles sont touchées, déclencheront une animation pour ce joueur.

  1. Pour organiser toutes les parties qui joueront l'animations, ajoutez un dossier dans l'espace de travail (survolez l'espace de travail et cliquez sur +) nommé TouchPartFolder.

  2. Dans TouchPartFolder, ajoutez une partie.

    Assurez-vous que la partie est placée là où jouer l'animation aurait du sens, comme la fin d'un niveau ou près d'un objet que les joueurs collectent.

    Exemple de partie de victoire

    Exemple de partie d'interaction
    >

  3. Dans StarterPlayer > StarterCharacterScripts, créez un script local nommé TouchPartRegister. Ensuite, copiez et collez le code ci-dessous.


    -- Utilisé avec le script "PlayerAnimationFeedback" pour jouer des animations sur les touches de partie
    -- Services
    local ReplicatedStorage = game:GetService("ReplicatedStorage")
    local Players = game:GetService("Players")
    local player = Players.LocalPlayer
    local character = player.Character or player.CharacterAdded:Wait()
    local humanoid = character:WaitForChild("Humanoid")
    local canTouch = false
    -- Inclure le module d'animation de commentaires
    local PlayerAnimationFeedback = require(ReplicatedStorage:WaitForChild("PlayerAnimationFeedback"))
    -- Fonction appelée lorsqu'une partie est touchée
    local function onPartTouch(otherPart)
    if humanoid and canTouch == false then
    canTouch = true
    PlayerAnimationFeedback:PlayAnimation()
    canTouch = false
    end
    end
    -- À l'exécution, appeler la fonction de chargement du module d'animation
    PlayerAnimationFeedback:LoadAnimation(humanoid)
    -- Liaison également d'un dossier de parties à l'événement "Touched" pour exécuter "onPartTouch()"
    local touchPartFolder = workspace:WaitForChild("TouchPartFolder")
    local touchParts = touchPartFolder:GetChildren()
    for _, touchPart in touchParts do
    touchPart.Touched:Connect(onPartTouch)
    end

    Ce script trouve toutes les parties dans le dossier TouchPartFolder et leur donne des événements Touched().Lorsqu'il est tiré, l'événement exécute une fonction qui joue une animation pour un joueur.

  4. Le prochain script déclenche des animations pour un joueur.Dans ReplicatedStorage, créez un nouveau ModuleScript nommé PlayerAnimationFeedback.Ensuite, copiez et collez le code ci-dessous.


    -- Utilisé avec le script "TouchPartRegister" pour jouer des animations pour un joueur
    local PlayerAnimationFeedback = {}
    local feedbackAnimationTrack
    local ANIMATION_FADE = 0.3
    local ANIMATION_ID = "rbxassetid://YOUR_ANIMATION"
    -- Fonction pour charger l'animation sur le personnage du joueur
    function PlayerAnimationFeedback:LoadAnimation(humanoid)
    local feedbackAnimation = Instance.new("Animation")
    feedbackAnimation.AnimationId = ANIMATION_ID
    feedbackAnimationTrack = humanoid.Animator:LoadAnimation(feedbackAnimation)
    feedbackAnimationTrack.Priority = Enum.AnimationPriority.Action
    feedbackAnimationTrack.Looped = false
    end
    -- Fonction pour jouer l'animations
    function PlayerAnimationFeedback:PlayAnimation()
    feedbackAnimationTrack:Play(ANIMATION_FADE)
    task.wait(feedbackAnimationTrack.Length)
    end
    return PlayerAnimationFeedback

Jouer des animations

Les animations doivent être identifiées dans un script, chargées et jouées.

Définir l'animations

Le script doit savoir quelle animation jouer.Pour utiliser une animationsexportée, trouvez son ID de ressource via un navigateur Web .Cet ID permettra ensuite de charger cette animation dans le script.

  1. Ouvrez la section animations de la page de création.

  2. Localisez et cliquez sur une animationsexportée.

  3. Copiez son ID à partir de l'URL dans votre navigateur.

  4. Dans le script, PlayerAnimationFeedback, remplacez le paramètre vide, (ligne 8), par l'ID que vous avez copié.

  5. Exécutez le projet et testez qu'une fois qu'un joueur atteint la partie, vous voyez l'animations.

Prochaines étapes

Voici quelques façons de poursuivre l'apprentissage

Apprenez sur l'animations

Jusqu'à présent, vous avez appris à créer des animations et à les ajouter dans des expériences.Pour poursuivre l'apprentissage, nous recommandons de visiter l'aperçu de l'animation Animation.

Sur cette page, vous trouverez des liens utiles pour améliorer les animations, tels que l'utilisation de l'éditeur de courbes pour un mouvement lisse, ou des conseils pour affiner les animations.

Animer les parties

En outre, lancez la leçon facultative Animation des parties pour apprendre à coder des adolescents, une fonctionnalité qui vous permet de redimensionner, de faire pivoter et de déplacer des parties.Un échantillon du projet final est ci-dessous.