Aggiungi animazioni

*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.

Per implementare le animazioni in gioco, usa gli script.Per questo Tutoriale, implementerai l'animazione di vittoria precedentemente creata utilizzando uno script pre-made.Una volta terminata, questa animazione può essere utilizzata per celebrare il successo di un Giocatore, come raggiungere la fine di un obby o trovare un segreto.

Animazioni di script

Le animazioni vengono attivate utilizzando script .Un approccio è quello di utilizzare gli eventi per riprodurre animazioni in una varietà di situazioni, come un giocatore che termina un Livello, sconfigge un nemico o persino effettua un Acquistain gioco.

Configura il progetto

Per questo progetto, creerai parti che quando toccate, attiveranno un'animazione per quel Giocatore.

  1. Per organizzare tutte le parti che riproduciranno l'animazioni, aggiungi una cartella in Workspace (passa il mouse su Workspace e clicca +) chiamata TouchPartFolder.

  2. In TouchPartFolder, aggiungi una parte.

    Assicurati che la parte sia posizionata dove giocare l'animazione abbia senso, come la fine di un livello o vicino a un oggetto che i giocatori raccolgono.

    Esempio di parte della vittoria
    >

    Esempio Interazione Parte
    >

  3. In StarterPlayer > StarterCharacterScripts, crea un LocalScript chiamato TouchPartRegister. Quindi copia e pasta il codice seguente.


    -- Utilizzato con lo script "PlayerAnimationFeedback" per giocare alle animazioni sulle parti toccate
    -- Servizi
    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
    -- Include il modulo di animazione dei feedback
    local PlayerAnimationFeedback = require(ReplicatedStorage:WaitForChild("PlayerAnimationFeedback"))
    -- Funzione chiamata quando una parte viene toccata
    local function onPartTouch(otherPart)
    if humanoid and canTouch == false then
    canTouch = true
    PlayerAnimationFeedback:PlayAnimation()
    canTouch = false
    end
    end
    -- All'avvio, chiama la funzione di caricamento del modulo di animazione
    PlayerAnimationFeedback:LoadAnimation(humanoid)
    -- Inoltre lega una cartella di parti all'evento "Touched" per eseguire "onPartTouch()"
    local touchPartFolder = workspace:WaitForChild("TouchPartFolder")
    local touchParts = touchPartFolder:GetChildren()
    for _, touchPart in touchParts do
    touchPart.Touched:Connect(onPartTouch)
    end

    Questo script trova tutte le parti nel TouchPartFolder e dà loro eventi Touched() .Quando viene licenziato, l'evento esegue una funzione che riproduce un'animazione per un Giocatore.

  4. Il prossimo script attiva le animazioni per un Giocatore.In ReplicatedStorage, crea un nuovo ModuleScript chiamato PlayerAnimationFeedback.Quindi, copia e pasta il codice qui sotto.


    -- Utilizzato con lo script "TouchPartRegister" per giocare alle animazioni per un Giocatore
    local PlayerAnimationFeedback = {}
    local feedbackAnimationTrack
    local ANIMATION_FADE = 0.3
    local ANIMATION_ID = "rbxassetid://YOUR_ANIMATION"
    -- Funzione per caricare l'animazione sul personaggio del Giocatore
    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
    -- Funzione per riprodurre l'animazioni
    function PlayerAnimationFeedback:PlayAnimation()
    feedbackAnimationTrack:Play(ANIMATION_FADE)
    task.wait(feedbackAnimationTrack.Length)
    end
    return PlayerAnimationFeedback

Riproduci animazioni

Le animazioni devono essere identificate in uno script, caricate e riprodotte.

Imposta l'animazioni

Lo script deve sapere quale animazione Giocare.Per utilizzare un'animazioniesportata, trova il suo ID risorsa attraverso un browser web .Quell'ID consentirà quindi all'animazione di essere caricata nello script.

  1. Apri la sezione Animazioni della pagina Crea.

  2. Individua e fai clic su un'animazioniesportata.

  3. Copia il suo ID dall'URL nel tuo browser.

  4. Nell' script, PlayerAnimationFeedback, sostituisci il segnaposto, (Linea 8), con l'ID che hai copiato.

  5. Esegui il progetto e testa che una volta che un giocatore colpisce la parte, vedi l'animazioni.

Prossimi passi

Ecco alcuni modi per continuare a imparare

Impara sull'animazioni

Finora, hai imparato a creare animazioni e aggiungerle alle esperienze.Per continuare a imparare, raccomandiamo di visitare l'anteprima Animazione.

Sulla pagina troverai utili link per migliorare le animazioni, come l'utilizzo dell'editor di curva per un movimento liscio o suggerimenti per migliorare le animazioni.

Animare le parti

Inoltre, avvia la lezione opzionale Animare le parti per imparare a codificare gli adolescenti, una funzione che ti consente di ridimensionare, Ridimensionaree spostare le parti.Un campione del progetto finale è qui sotto.