Aggiungere 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 della vittoria precedentemente creata usando uno script pre-made. Una volta terminato, questo animazione può essere utilizzata per festeggiare il raggiungimento di un Giocatore, come raggiungere la fine di un obby o trovare un segreto.

Animazioni di script

Le animazioni sono attivate utilizzando script . Un approccio è utilizzare gli eventi per giocare alle animazioni in una varietà di situazioni, come un giocatore che finisce un Livello, sconfigge un nemico o persino fa un Acquistain gioco.

Configura il progetto

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

  1. Per organizzare tutte le parti che riproducono l'animazioni, aggiungi una cartella nel Workspace (passa il mouse su Workspace e fai clic +) chiamata TouchPartFolder.

  2. In TouchPartFolder, aggiungi una parte.

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

    Parte di vittoria di esempio
    Parte di esempio di interazione
  3. In StarterPlayer > StarterCharacterScripts, crea uno script locale chiamato TouchPartRegister. Quindi copia e pasta il codice qui sotto.


    -- Utilizzato con lo script "PlayerAnimationFeedback" per giocare alle animazioni sulle parti del tocco
    -- 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
    -- Includi modulo di feedback
    local PlayerAnimationFeedback = require(ReplicatedStorage:WaitForChild("PlayerAnimationFeedback"))
    -- Funzione chiamata quando viene toccata una parte
    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 in TouchPartFolder e le dà Touched() eventi. Quando viene eseguito, 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 nuovoModuleScript chiamato PlayerAnimationFeedback. Quindi, copia e pasta il codice sottostante.


    -- 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 giocare l'animazioni
    function PlayerAnimationFeedback:PlayAnimation()
    feedbackAnimationTrack:Play(ANIMATION_FADE)
    task.wait(feedbackAnimationTrack.Length)
    end
    return PlayerAnimationFeedback

Giocando alle animazioni

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

Impostazione dell'animazione

Lo script deve sapere quale animazione Giocare. Per utilizzare un'animazioniesportata, trova il suo ID risorsa attraverso un browser web. Quell'ID quindi consentirà che l'animazione venga 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 nella tua browser.

  4. Nel script, PlayerAnimationFeedback, sostituisci il placeholder, YOUR_ANIMATION (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 ad imparare

Scopri Animazione

Finora, hai imparato a creare animazioni e aggiungerle alle esperienze. Per continuare ad imparare, ti consigliamo di visitare la Panoramica Animazioni.

Su quella pagina, troverai link utili per migliorare le animazioni, come l'uso del cursore per il movimento fluido, o consigli nella raffinazione delle animazioni.

Parti Animazioni

Inoltre, inizia la lezione opzionale Animazione parti per imparare a codificare i tweens, una funzione che ti consente di Ridimensionare, Rotaree spostare parti. Un esempio del progetto finale è sottostante.