Tambahkan animasi

*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.

Untuk menerapkan animasi dalam game, gunakan skrip.Untuk tutorial ini, Anda akan menerapkan animasi kemenangan yang sebelumnya dibuat menggunakan skrip pra-dibuat.Setelah selesai, animasi ini dapat digunakan untuk merayakan pencapaian pemain, seperti mencapai akhir obby atau menemukan rahasia.

Animasi skrip

Animasi diaktifkan menggunakan skrip .Satu pendekatan adalah menggunakan acara untuk memutar animasi dalam berbagai situasi, seperti pemain menyelesaikan level, mengalahkan musuh, atau bahkan melakukan pembelian dalam game.

Menyiapkan proyek

Untuk proyek ini, Anda akan membuat bagian yang saat disentuh, memicu animasi untuk pemain itu.

  1. Untuk mengatur semua bagian yang akan memainkan animasi, tambahkan folder di Workspace ( hover over Workspace dan klik + ) bernama TouchPartFolder.

  2. Di TouchPartFolder, tambahkan bagian.

    Pastikan bagian ditempatkan di tempat bermain animasi masuk akal, seperti akhir level atau dekat objek yang dikumpulkan pemain.

    Contoh Bagian Kemenangan
    >

    Bagian Interaksi Contoh
    >

  3. Di StarterPlayer > StarterCharacterScripts, buat Skrip Lokal bernama TouchPartRegister. Kemudian salin dan tempel kode di bawah ini.


    -- Digunakan dengan skrip "PlayerAnimationFeedback" untuk memainkan animasi pada sentuhan bagian
    -- Layanan
    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
    -- Terdiri modul animasi umpan balik
    local PlayerAnimationFeedback = require(ReplicatedStorage:WaitForChild("PlayerAnimationFeedback"))
    -- Fungsi dipanggil ketika bagian disentuh
    local function onPartTouch(otherPart)
    if humanoid and canTouch == false then
    canTouch = true
    PlayerAnimationFeedback:PlayAnimation()
    canTouch = false
    end
    end
    -- Saat startup, fungsi pemuatan modul animasi panggil
    PlayerAnimationFeedback:LoadAnimation(humanoid)
    -- Juga ikat folder bagian ke acara "Touched" untuk menjalankan "onPartTouch()"
    local touchPartFolder = workspace:WaitForChild("TouchPartFolder")
    local touchParts = touchPartFolder:GetChildren()
    for _, touchPart in touchParts do
    touchPart.Touched:Connect(onPartTouch)
    end

    Skrip ini menemukan semua bagian di TouchPartFolder dan memberi mereka Touched() peristiwa.Saat dipecat, acara menjalankan fungsi yang memainkan animasi untuk pemain.

  4. Skrip berikutnya memicu animasi untuk pemain.Di ReplicatedStorage, buat ModulScript baru bernama PlayerAnimationFeedback.Kemudian, salin dan tempel kode di bawah ini.


    -- Digunakan dengan skrip "TouchPartRegister" untuk memainkan animasi untuk pemain
    local PlayerAnimationFeedback = {}
    local feedbackAnimationTrack
    local ANIMATION_FADE = 0.3
    local ANIMATION_ID = "rbxassetid://YOUR_ANIMATION"
    -- Fungsi untuk memuat animasi ke karakter pemain
    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
    -- Fungsi untuk memutar animasi
    function PlayerAnimationFeedback:PlayAnimation()
    feedbackAnimationTrack:Play(ANIMATION_FADE)
    task.wait(feedbackAnimationTrack.Length)
    end
    return PlayerAnimationFeedback

Mainkan animasi

Animasi harus diidentifikasi dalam skrip, dimuat, dan dimainkan.

Tetapkan animasi

Skrip perlu tahu animasi mana yang harus main.Untuk menggunakan animasi yang diekspor, temukan ID asetnya melalui browser web .ID itu kemudian akan memungkinkan animasi tersebut dimuat dalam skrip.

  1. Buka bagian Animasi dari halaman Buat.

  2. Temukan dan klik animasi yang diekspor.

  3. Salin ID-nya dari URL di browser Anda.

  4. Dalam skrip, PlayerAnimationFeedback, ganti penanda tempat, YOUR_ANIMATION (Baris 8), dengan ID yang Anda salin.

  5. Jalankan proyek dan uji bahwa setelah seorang pemain mengenai bagian, Anda melihat animasi.

Langkah selanjutnya

Di bawah ini adalah beberapa cara untuk terus belajar

Pelajari tentang animasi

Sejauh ini, Anda telah belajar cara membuat animasi dan menambahkannya ke pengalaman.Untuk melanjutkan pembelajaran, kami sarankan mengunjungi panduan Animasi.

Di halaman itu, Anda akan menemukan tautan berguna untuk meningkatkan animasi, seperti menggunakan editor kurva untuk gerakan mulus, atau tips dalam menyempurnakan animasi.

Animasi bagian

Selain itu, mulai pelajaran opsional Animasi Suku Cadang untuk mempelajari cara mengkode remaja, fitur yang memungkinkan Anda untuk membesarkan, memutar, dan memindahkan bagian.Sampel proyek akhir ada di bawah ini.