Animasyonlar Ekleme

*Bu içerik, yapay zekâ (beta) kullanılarak çevrildi ve hatalar içerebilir. Sayfayı İngilizce görüntülemek için buraya tıkla.

Oyun içi animasyonları uygulamak için kodları kullanın. Bu öğretici için, daha önce yapılmış olan zafer animasyonunu önyükleme bir kod kullanarak uygulayacaksınız. Uzaktan sona erişmek veya gizli bir kaynaktan bulmak gibi bir oyuncunun başarısını kutlamak için bu animasyonu kullanabilirsiniz.

Animasyonları Kodlama

Animasyonlar skriptler kullanılarak tetiklenir. Bir yaklaşım, bir oyuncunun bir seviyeyi tamamlaması gibi çeşitli durumlarda animasyonları oynatmak için etkinlikleri kullanmaktır, bir düşmanı yenmek veya hatta bir oyun içi satın alma yapmak gibi.

Projeyi ayarla

Bu proje için, dokunulduğunda oyuncunun için bir animasyon başlatan parçalar oluşturacaksınız.

  1. animasyonoynatacak tüm parçaları organize etmek için, Çalışma Alanı'na bir klasör ekleyin (Workspace'e sağ tıklayın ve +'a tıklayın) ve TouchPartFolder adında bir klasör oluşturun.

  2. TouchPartFolder'a bir parça ekleyin.

    Animasyonun oynanması mantıklı olacağı yere yerleştirin, bir seviyenin sonu veya oyuncuların topladığı nesnelerin yakını gibi.

    Kazanma Parçası Örneği
    Etkileşim Parçası Örneği
  3. StarterPlayer > StarterCharacterScripts'ta, TouchPartRegister adında bir yerel kod oluşturun. Sonra aşağıdaki kodu kopyalayın.


    -- Parça dokunuşlarında animasyon oynatmak için "PlayerAnimationFeedback" kullanılır
    -- Hizmetler
    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
    -- Geri bildirim animasyonu modülünü içer
    local PlayerAnimationFeedback = require(ReplicatedStorage:WaitForChild("PlayerAnimationFeedback"))
    -- Bir parçaya dokunulduğunda çağırılan işlev
    local function onPartTouch(otherPart)
    if humanoid and canTouch == false then
    canTouch = true
    PlayerAnimationFeedback:PlayAnimation()
    canTouch = false
    end
    end
    -- Başlangıçta, Animasyon Modülü Yükleme Fonksiyonunu çağırır
    PlayerAnimationFeedback:LoadAnimation(humanoid)
    -- Ayrıca "Touched" etkinliğine bir "onPartTouch()" dizini bağlayın
    local touchPartFolder = workspace:WaitForChild("TouchPartFolder")
    local touchParts = touchPartFolder:GetChildren()
    for _, touchPart in touchParts do
    touchPart.Touched:Connect(onPartTouch)
    end

    Bu kod TouchPartFolder'da tüm parçaları bulur ve onlara Touched() etkinlikleri verir. Etkinliği çalıştırır ve bir oyuncunun animasyonunu oynar.

  4. Bir oyuncunun animasyonlarını bir sonraki kriptetigir. ReplicatedStorage'da, PlayerAnimationFeedback adında yeni bir ModülScript oluşturun. Sonra, aşağıdaki kodu kopyalayın.


    -- Bir oyuncunun animasyonlarını oynatmak için "TouchPartRegister" kullanılır
    local PlayerAnimationFeedback = {}
    local feedbackAnimationTrack
    local ANIMATION_FADE = 0.3
    local ANIMATION_ID = "rbxassetid://YOUR_ANIMATION"
    -- oyuncukarakterine animasyon yükleme işlevi
    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
    -- animasyonoynatmak için işlev
    function PlayerAnimationFeedback:PlayAnimation()
    feedbackAnimationTrack:Play(ANIMATION_FADE)
    task.wait(feedbackAnimationTrack.Length)
    end
    return PlayerAnimationFeedback

Animasyon Oynatma

Animasyonlar bir senaryoda belirlenmeli, yüklenmeli ve oynanmalıdır.

Animasyonun Ayarlanması

Kod, oynatılacak animasyonu bilmelidir. Bir çıktı animasyonunu kullanmak için, bir web tarayıcı aracılığıyla varlık kimliğini bulun. Bu, animasyonun kodda yükleneceğini sağlayacaktır.

  1. Yaratma sayfasının Animasyonlar bölümünü aç.

  2. Ekspor edilen bir animasyonu bulun ve tıklayın.

  3. Tarayıcınızın URL'sinden kopyalayın.

  4. Scriptte, PlayerAnimationFeedback, değiştirici, YOUR_ANIMATION (Sıra 8), kopyaladığınız ID ile değiştiriciyi yerine koyun.

  5. Projeyi çalıştırın ve bir oyuncu bir parçaya vurduğunda animasyonu görürsünüz.

Sonraki Adımlar

Aşağıda, öğrenmeyi sürdürmenin birkaç yolunu vardır

Animasyon Hakkında Öğren

Şimdiye kadar animasyonları oluşturmayı ve deneyimlere eklemayı öğrendiniz. Öğrenmeye devam etmek için, Animasyon genel bakışını ziyaret etmeyi öneririz.

O sayfada, animasyonları geliştirmek için kullanışlı bağlantılar bulacaksınız, takvimci editörü kullanarak düzgün hareket etme ve animasyonları işleme gibi.

Parçaları Animasyon

Ayrıca, gençleri kodlamayı öğrenmek için zorunlu dersi Animating Parts başlatın, bir ölçekleme, döndürme ve hareket etme özelliğini sağlayan bir özelliktir. Final projesinin bir örneği aşağıdadır.