Dodawanie Animacji

*Ta zawartość została przetłumaczona przy użyciu narzędzi AI (w wersji beta) i może zawierać błędy. Aby wyświetlić tę stronę w języku angielskim, kliknij tutaj.

Aby wdrożyć animacje w grze, użyj skryptów. W tym samouczku wykonasz animację zwycięstwa poprzez wcześniej stworzony skrypt. Po zakończeniu możesz użyć tej animacji, aby świętować osiągnięcie gracza, takie jak dotarcie do końca obby lub znalezienie sekretu.

Animacje w trybie skryptu

Animacje są uruchamiane przy użyciu skryptów . Jeden podejście jest używanie wydarzeń do odtwarzania animacji w różnych sytuacjach, takich jak gracz końcący poziom, pokonujący wróg, przeciwniklub nawet dokonujący kupowaćw grze.

Zarządzaj projektem

Dla tego projektu stworzysz części, które po dotknięciu wywołują animację dla tego gracza.

  1. Aby zorganizować wszystkie części, które odtwarzają animacja, dodaj plik z klipsem w Przestrzeni Roboczej (przytrzymaj Przestrzeń Roboczą i kliknij +) nazywającym się TouchPartFolder.

  2. W TouchPartFolder dodaj część.

    Upewnij się, że część zostanie postawiona tak, aby animacja była sensowna, tak jak końcowy poziom lub blisko obiektu, na którym zbierają gracze.

    Część zwycięstwa w przykładzie
    Część interakcji przykładu
  3. W StarterPlayer > StarterCharacterScripts utwórz lokalny skrypt nazyający się TouchPartRegister. Następnie skopiuj i wklej kod poniżej.


    -- Używany w skrypcie "PlayerAnimationFeedback", aby odtwarzać animacje na dotykach części
    -- Usługi
    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
    -- Zawarte moduły animacji zwrotów
    local PlayerAnimationFeedback = require(ReplicatedStorage:WaitForChild("PlayerAnimationFeedback"))
    -- Funkcja wzywana po dotknięciu części
    local function onPartTouch(otherPart)
    if humanoid and canTouch == false then
    canTouch = true
    PlayerAnimationFeedback:PlayAnimation()
    canTouch = false
    end
    end
    -- Podczas uruchomienia, wezwij funkcję ładowania modułu animacji
    PlayerAnimationFeedback:LoadAnimation(humanoid)
    -- Zwiąż katalog części z wydarzeniem " dotknij " aby uruchomić "naPartTouch() "
    local touchPartFolder = workspace:WaitForChild("TouchPartFolder")
    local touchParts = touchPartFolder:GetChildren()
    for _, touchPart in touchParts do
    touchPart.Touched:Connect(onPartTouch)
    end

    Ten skrypt znajduje wszystkie części w TouchPartFolder i daje im wydarzenia Touched(). Po uruchomieniu wydarzenie wykonuje funkcję, która odtwarza animację dla gracza.

  4. Następny skrypt weryfikuje animacje dla gracza. W ReplicatedStorage utwórz nowy moduł nazyający się PlayerAnimationFeedback. Następnie skopiuj i wklej kod poniżej.


    -- Używany z "TouchPartRegister" skrypt do odtwarzania animacji dla gracza
    local PlayerAnimationFeedback = {}
    local feedbackAnimationTrack
    local ANIMATION_FADE = 0.3
    local ANIMATION_ID = "rbxassetid://YOUR_ANIMATION"
    -- Funkcja ładowania animacji na postaci gracza
    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
    -- Funkcja odtwarzania animacja
    function PlayerAnimationFeedback:PlayAnimation()
    feedbackAnimationTrack:Play(ANIMATION_FADE)
    task.wait(feedbackAnimationTrack.Length)
    end
    return PlayerAnimationFeedback

Grywanie Animacji

Animacje muszą być zidentyfikowane w skrypcie, załadowane i odtwarzane.

Ustawienie animacji

Skrypt musi wiedzieć, którą animację grać. Aby użyć zesportowanej animacja, znajdź jej identyfikator zasobu poprzez przeglądarkę przeglądarka. Ten identyfikator zasobu pozwoli wtedy na ładowanie tej animacji w skrypcie.

  1. Otwórz sekcję Animacje na stronie Utwórz.

  2. Zlokalizuj i kliknij eksportowaną animacja.

  3. Kopiuj jego ID z URL w swojej przeglądarka.

  4. W skrypcie, PlayerAnimationFeedback, zastąp miejsceholderem, YOUR_ANIMATION (linia 8), przez identyfikator kopiowanego z kopiowania.

  5. Zacznij projekt i przetestuj, że gdy gracz dotknie części, zobaczysz animacja.

Kolejne kroki

Poniżej są kilka sposobów na kontynuowanie uczenia się

Dowiedz się o animacji

Do tej pory nauczyłeś się, jak tworzyć animacje i dodawać je do doświadczeń. Aby kontynuować naukę, zalecamy odwiedzić Przeglad animacji.

Na tej stronie znajdziesz przydatne linki do poprawy animacji, takie jak użycie edytora kształtów dla gładkiego ruchu, lub wskazówki w refinning animacji.

Animowane części

Dodatkowo, rozpocznij opcjonalny lekcji Animating Parts, aby nauczyć się kodować nastolatków, funkcję, która umożliwia skalowanie, obrót i przesuwanie części. Samouczek końcowego projektu jest poniżej.