เพิ่มแอนิเมชัน

*เนื้อหานี้แปลโดยใช้ AI (เวอร์ชัน Beta) และอาจมีข้อผิดพลาด หากต้องการดูหน้านี้เป็นภาษาอังกฤษ ให้คลิกที่นี่

เพื่อใช้งานแอนิเมชั่นในเกม ให้ใช้สคริปต์สำหรับบทแนะนำนี้ คุณจะใช้อนิเมชั่นชัยชนะที่ทำไว้ล่วงหน้าโดยใช้สคริปต์ที่ทำไว้ล่วงหน้าเมื่อเสร็จสิ้นแล้ว แอนิเมชั่นนี้สามารถใช้เพื่อเฉลิมฉลองความสำเร็จของผู้เล่น เช่น ไปถึงจุดสิ้นสุดของออบบี้หรือค้นหาความลับ

แอนิเมชั่นของสคริปต์

แอนิเมชั่นจะถูกเรียกใช้โดยใช้ สคริปต์ หนึ่งในวิธีคือการใช้เหตุการณ์เพื่อเล่นแอนิเมชันในสถานการณ์ต่างๆ เช่น ผู้เล่นจบระดับ เอาชนะศัตรู หรือแม้แต่ซื้อสินค้าในเกม

ตั้งค่าโครงการ

สำหรับโครงการนี้ คุณจะสร้างชิ้นส่วนที่เมื่อสัมผัสจะเรียกการแสดงภาพเคลื่อนไหวสำหรับผู้เล่นคนนั้น

  1. เพื่อจัดระเบียบชิ้นส่วนทั้งหมดที่จะเล่นแอนิเมชัน เพิ่มโฟลเดอร์ในพื้นที่ทำงาน (เลื่อนเมาส์ไปที่พื้นที่ทำงานแล้วคลิก +) ชื่อ TouchPartFolder

  2. ใน TouchPartFolder เพิ่มส่วน

    ตรวจสอบให้แน่ใจว่าส่วนถูกวางในตำแหน่งที่เล่นแอนิเมชั่นจะมีเหตุผล เช่น ที่สิ้นสุดของระดับหรืออยู่ใกล้กับวัตถุที่ผู้เล่นรวบรวม

    ส่วนชัยชนะตัวอย่าง
    ส่วนการโต้ตอบตัวอย่าง
  3. ใน StarterPlayer > StarterCharacterScripts สร้างสคริปต์ท้องถิ่นชื่อ TouchPartRegister จากนั้นคัดลอกและวางโค้ดด้านล่าง


    -- ใช้กับสคริปต์ "PlayerAnimationFeedback" เพื่อเล่นแอนิเมชั่นบนส่วนสัมผัส
    -- บริการ
    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
    -- รวมโมดูลแอนิเมชั่นข้อเสนอแนะ
    local PlayerAnimationFeedback = require(ReplicatedStorage:WaitForChild("PlayerAnimationFeedback"))
    -- ฟังก์ชันที่เรียกเมื่อส่วนถูกแตะ
    local function onPartTouch(otherPart)
    if humanoid and canTouch == false then
    canTouch = true
    PlayerAnimationFeedback:PlayAnimation()
    canTouch = false
    end
    end
    -- เมื่อเริ่มต้น, เรียกฟังก์ชันการโหลดโมดูลแอนิเมชั่น
    PlayerAnimationFeedback:LoadAnimation(humanoid)
    -- ยังผูกโฟลเดอร์ของชิ้นส่วนไปยังอีเวนต์ "สัมผัส" เพื่อดําเนินการ "onPartTouch()"
    local touchPartFolder = workspace:WaitForChild("TouchPartFolder")
    local touchParts = touchPartFolder:GetChildren()
    for _, touchPart in touchParts do
    touchPart.Touched:Connect(onPartTouch)
    end

    สคริปต์นี้ค้นหาส่วนทั้งหมดใน TouchPartFolder และให้กิจกรรม Touched() แก่พวกเขาเมื่อยิงแล้ว อีเวนต์จะรันฟังก์ชันที่เล่นแอนิเมชันสำหรับผู้เล่น

  4. สคริปต์ต่อไปจะเรียกการแสดงภาพเคลื่อนไหวสำหรับผู้เล่นใน ReplicatedStorage สร้าง ModuleScript ใหม่ชื่อ PlayerAnimationFeedbackจากนั้นคัดลอกและวางโค้ดด้านล่าง


    -- ใช้กับสคริปต์ "TouchPartRegister" เพื่อเล่นแอนิเมชั่นสำหรับผู้เล่น
    local PlayerAnimationFeedback = {}
    local feedbackAnimationTrack
    local ANIMATION_FADE = 0.3
    local ANIMATION_ID = "rbxassetid://YOUR_ANIMATION"
    -- ฟังก์ชันในการโหลดแอนิเมชันลงบนตัวละครของผู้เล่น
    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
    -- แอนิเมชัน
    function PlayerAnimationFeedback:PlayAnimation()
    feedbackAnimationTrack:Play(ANIMATION_FADE)
    task.wait(feedbackAnimationTrack.Length)
    end
    return PlayerAnimationFeedback

เล่นแอนิเมชั่น

แอนิเมชั่นต้องได้รับการระบุในสคริปต์ที่โหลดและเล่น

ตั้งค่าแอนิเมชัน

สคริปต์ต้องรู้ว่าจะเล่นแอนิเมชั่นไหนเพื่อใช้แอนิเมชั่นที่ส่งออก ค้นหา ID สินทรัพย์ ผ่านเบราว์เซอร์เว็บID นั้นจะอนุญาตให้แอนิเมชั่นถูกโหลดในสคริปต์

  1. เปิดส่วน แอนิเมชั่น ของหน้าสร้าง

  2. แอนิเมชัน

  3. คัดลอก ID จาก URL ในเบราว์เซอร์ของคุณ

  4. ในสคริปต์, PlayerAnimationFeedback, แทนที่ตัวชั่วคราว, YOUR_ANIMATION (บรรทัด 8), ด้วย ID ที่คุณคัดลอก

  5. ดำเนินโครงการและทดสอบว่าเมื่อผู้เล่นตีส่วนหนึ่งคุณจะเห็นแอนิเมชัน

ขั้นตอนต่อไป

ต่อไปนี้เป็นวิธีการสองสามวิธีในการเรียนรู้ต่อไป

เรียนรู้เกี่ยวกับแอนิเมชัน

จนถึงตอนนี้คุณได้เรียนรู้วิธีสร้างแอนิเมชันและเพิ่มลงในประสบการณ์เพื่อดำเนินการเรียนรู้ต่อไป เราขอแนะนำให้คุณไปที่ภาพรวมของ แอนิเมชัน

บนหน้านั้น คุณจะพบลิงก์ที่มีประโยชน์ในการปรับปรุงแอนิเมชัน เช่น การใช้ตัวแก้ไขเส้นโค้งเพื่อการเคลื่อนไหวที่ราบรื่นหรือเคล็ดลับในการปรับปรุงแอนิเมชัน

แอนิเมชั่นส่วน

นอกจากนี้ยังเริ่มบทเรียนทางเลือก แอนิเมชั่นชิ้นส่วน เพื่อเรียนรู้วิธีการเขียนโค้ดวัยรุ่นซึ่งเป็นคุณลักษณะที่ช่วยให้คุณสามารถขยาย หมุน และย้ายชิ้นส่วนได้ตัวอย่างโครงการสุดท้ายอยู่ด้านล่าง