Animasyon Grafiği Editörü

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

Animasyon Grafiği Editörü, teknik sanatçılara ve animatörlere, karmaşık animasyon mantığını doğrudan Roblox Studio içinde oluşturma yetkisi veren görsel, düğüm tabanlı bir araçtır. Blend ağaçları gibi davranışları oluşturmak için akıcı bir arayüz sunarak, karakter hareketi için geleneksel manuel betimleme bağımlılığını ortadan kaldırır.

Bu sistem, mevcut animasyon iş akışınızla birlikte çalışır:

  • Animasyon Editörü: Bireysel klipleri oluşturmak ve anahtar çerçeveleri ve eğrileri ince ayar yapmak için Animasyon Editörü kullanmaya devam edin.
  • Animasyon Grafiği Editörü: Bu aracı kullanarak bu klipleri alıp, karmaşık oyun davranışlarını yönlendirmek için bir mantık ağacına düzenleyin.

İşbirliğini artırmak için tasarlanan görsel grafik, geliştiricilerin animatörler tarafından oluşturulan mantığı hızlı bir şekilde incelemesine, hata ayıklamasına ve anlamasına olanak tanır. Sanatçılar etkileşimli hareketi geliştirmeye odaklanırken, geliştiriciler de karışık animasyonlar ve durumlar üzerinde doğrudan kontrol sağlamak için animasyon grafiği düğümlerine programatik olarak erişebilirler.

Bir grafik oluşturun


Animasyonlanabilir bir karakter için mantık oluşturmaya başlamak için, Studio şeridindeki Avatar sekmesi aracılığıyla Animasyon Grafiği editörüne erişin. Aşağıdaki adımlar, bir rig başlatmayı ve varsayılan yürüyüş ve el sallama animasyonlarını kullanarak temel bir düğüm ağı oluşturmayı göstermektedir.

Pratik uygulamalar hakkında daha derin bir inceleme için, hem temel hem de karmaşık uygulama örneklerini içeren Animasyon Grafiği Referans Dosyası üzerinde keşif yapabilirsiniz.

Kendi animasyon grafiğinizi oluşturmak için, referansta sağlanan temel örneğe benzer şekilde aşağıdaki adımları izleyin:

  1. Studio'da, Avatar sekmesine giderek ve Karakter ⟩ Benim Avatarım seçeneğini seçerek animasyonlanabilir bir rig ekleyin.

    Studio'nun araç çubuğunda vurgulanan Karakter düğmesi.
  2. Avatar sekmesinde Grafik Editörü'ne giderek Animasyon Grafiği Editörünü açın.

    Studio'nun araç çubuğunda Animasyon Grafiği Editörü gösterilmektedir.
  3. 3D görünümde animasyonlanabilir rig'i seçin ve Grafik Oluştur seçeneğini seçin.

  4. Grafik Editörü'nde sağ tıklayın ve Klip seçeneğini seçin.

    Sağ tıklama menüsündeki düğüm listesi
  5. Yeni Klip düğümünde, Animasyon Kimliğini ayarlayın.

    1. Animasyon Kimliği açılır menüsünü seçin.

    2. Belirli bir animasyon varlık kimliğini göndermek için İçe Aktar seçeneğine tıklayın.

      Animasyon kimliği eklemek için animasyon içe aktarma modülünde bir alan gösterilmektedir.
    3. Animasyon Kimliği alanına varsayılan Yürüyüş animasyonunu ekleyin: 507777826.

    4. İçe Aktar seçeneğini seçin.

  6. Varsayılan El Sallama animasyonunu kullanarak adım 4-5'i tekrarlayarak başka bir klip düğümü ekleyin: 507770239.

    Doldurulmuş Animasyon Kimliğine sahip iki klip düğümü
  7. Grafik Editörü'nde sağ tıklayın ve Ekle seçeneğini seçin.

    Düğüm ekle
  8. Klip düğümlerini Ekle düğümüne bağlayın üst sağ çıkış konektörünü uygun porta sürükleyerek:

    1. Yürüyüş animasyonuna sahip Klip düğümünü Temel portuna bağlayın.
    2. El Sallama animasyonuna sahip Klip düğümünü Ekleme portuna bağlayın.
    Her iki klip düğümü ekleme düğümüne bağlı
  9. Ekle düğümünden, üst sağ çıkış konektörünü Grafik Çıkışı Poz portuna bağlayın.

    Tüm düğümler son çıkış düğümüne bağlı
  10. İSTEĞE BAĞLI
    Hız değişkeninize bir parametre atayın.

    1. Yeşil Hız portunu boş bir alana tıklayıp sürükleyin. Yeni bir parametre düğümü görüntülenecektir.

      Klip düğümünün Hız portundan konektörü tıklayıp sürükleyerek.
    2. Grafik editörünün sol üst kısmında, düğümlerinizdeki parametreleri hızlı bir şekilde değiştirmek için parametre panelini kullanın. Ayrıca buna programatik olarak erişebilirsiniz.

      Parametre paneli, parametre düğümü ve paylaşılan değerleri gösteren klip düğümü.
  11. Animasyonu test etmek için oynat düğmesine basın.

    Animasyonları önizlemek için oynat düğmesi simgesi
  12. Çeşitli ağırlıkları, hızları, oynatma modlarını ve diğer animasyonları test etmeyi deneyin. Bireysel düğümler hakkında daha fazla bilgi için Düğüm referansı kısmına bakın.

API entegrasyonu

Bir Animasyon Grafiği oluşturmak ve dağıtmak, standart Roblox animasyon hattını takip eder. Animasyon Grafiği Editöründe bir rig seçtikten sonra, yeni bir AnimationGraphDefinition varlığı oluşturulur. Bu varlık, düğümlerinizin, bağlantılarınızın ve parametrelerinizin konteyneri olarak hizmet eder. Mantığınız tamamlandığında, grafiği yayınlayarak standart bir Varlık Kimliği alırsınız.

Betiklerinizde, bu grafikleri, geleneksel bir animasyon gibi Animator üzerine yükleyerek etkileşimde bulunursunuz. Grafiğin iç mantığını yönlendirmek için, gerçek zamanlı değerleri — hareket hızı veya durum boolean'ları gibi — doğrudan grafiğin değişkenlerine geçirmek için AnimationTrack:SetParameter() kullanın.

local animation = Instance.new("Animation")
animation.AnimationId = "rbxassetid://123456789" -- Yayınlanan Grafiğinizin Kimliği
local animationTrack = animator:LoadAnimation(animation)
animationTrack:Play()
-- RunService aracılığıyla dinamik parametre güncellemeleri
game:GetService("RunService").Stepped:Connect(function(_, dt)
local currentSpeed = humanoidRootPart.AssemblyLinearVelocity.Magnitude
animationTrack:SetParameter("humanoidSpeed", currentSpeed)
end)

Düğüm referansı

Küresel olay kuralları

Tüm düğümler ve geçişler için, aşağıdaki kurallar varsayılan olarak geçerlidir:

  • Olaylar, kaynak düğümünden yukarı doğru grafikte yayılır. Her olay, kaynağının son karışım üzerindeki etkisini temsil eden bir ağırlık taşır. Ağırlık herhangi bir noktada sıfıra ulaşırsa, olay susturulur.
  • Özel olay mantığı olmayan düğümler, tüm olayları değişmeden geçirir; girişler arasında karışım yapan veya seçim yapan düğümler, ağırlığı ölçeklendirebilir veya birincil olmayan girişlerden gelen olayları engelleyebilir (her düğüm için Olay bölümüne bakın).
  • Grafiğin tepe noktasına ulaşan işaretçi olayları, AnimationTrack:GetMarkerReachedSignal() aracılığıyla gözlemlenebilir.

Geçişler

Animasyon Grafiğindeki birkaç düğüm (örneğin Seç, Öncelik Seç, Sıra ve Rastgele Sıra), aktif girişler arasında geçiş yaparken animasyonların nasıl karıştığını yönetir. Düğüm referansında gereksizliği önlemek için, bu davranışlar standart geçiş özellik gruplarıyla tanımlanır.

Varsayılan geçiş

Varsayılan Geçiş

Düğümün yeni bir aktif girişi geçiş yaptığında uygulanan temel karışım davranışı.

Geçiş geçersiz kılma

Geçiş Geçersiz Kılma

Varsayılan geçişi geçersiz kılan girişe özgü bağlantı özellikleri. Bu özellikler, düğümün o belirli girişi geçiş yaptığında uygulanır.

Çoğaltma

Animasyon grafiği parametreleri ve iç düğüm durumu otomatik olarak çoğaltılır. Çoğaltma modu, Animasyon betiği oluşturulduğunda Workspace.AuthorityMode tarafından belirlenir:

Örnek Animasyon Betikleri

Bir rig için bir animasyon grafiğini yönlendirmek üzere örnek betikler oluşturmak için, Animasyon Grafiği Editöründe Grafik -> Animasyon betiği oluştur seçeneğini kullanın. Bu, StarterCharacterScripts (oyuncu karakterleri için) veya doğrudan rig üzerinde (NPC'ler için) yerleştirilen bir betik hiyerarşisi üretir:

Animate (ModuleScript)
├── RunClient (LocalScript)
└── RunServer (Script, RunContext = Legacy)

Animate ModuleScript, grafik yükleme mantığını içerir. RunClient ve RunServer betikleri, uygun bağlamda bunu çağırır. Hangi betiklerin dahil olduğu kullanım durumuna bağlıdır:

Kullanım DurumuDahil Edilen BetiklerDavranış
NPC (herhangi bir mod)RunServerSunucu grafiği yükler ve oynatır. Durum otomatik olarak tüm istemcilere çoğaltılır.
Oyuncu + Enum.AuthorityMode.ServerRunServer + RunClientSunucu, grafiği yetkili olarak yönlendirir. Sahip istemci, geri alma tabanlı yerel tahmin için Enum.PredictionMode'u etkinleştirir.
Oyuncu + Enum.AuthorityMode.AutomaticRunClientSahip istemci grafiği yükler ve oynatır. Parametreler otomatik olarak sunucuya ve diğer istemcilere çoğaltılır.

Aşağıdaki özellikler, Animate betiğinde saklanır ve davranışını yapılandırır:

ÖzellikTürAçıklama
GraphNameStringAnimasyon grafiği varlığının adı.
CharacterNameStringGrafiğin hedef aldığı rig'in adı.
SourceAssetIdStringGrafiğin yayınlanan Varlık Kimliği. Yayınlanmış oyunlarda çalışma zamanında kullanılır.
IsServerAuthorityBooleanBetik, Workspace.AuthorityMode Sunucu olarak ayarlandığında mı oluşturuldu. Çoğaltma stratejisini belirler.
PreviewInStudioBooleanDoğru olduğunda (varsayılan), Studio oynatma testi, yayınlanmamış grafiği yerel olarak yükler, böylece yayınlamadan iterasyon yapabilirsiniz. Yayınlanmış varlığı Studio'da test etmek için yanlış olarak ayarlayın. Şu anda Enum.AuthorityMode.Server içinde desteklenmediğini unutmayın.

Otomatik modda parametre çoğaltma

Workspace.AuthorityMode Otomatik olduğunda:

  • sahip istemci, oyuncu karakter grafiğini yönlendirir; sunucu, NPC grafiğini yönlendirir.
  • AnimationTrack:SetParameter() aracılığıyla ayarlanan parametreler otomatik olarak diğer eşlere çoğaltılır. Tek bir çerçeve içinde birden fazla SetParameter çağrısı birleştirilir (son yazar kazanır).
  • Parametre taşımak için ek bir betik yazmaya gerek yoktur — motor, çoğaltmayı dahili olarak yönetir.
  • Diğer istemciler, parametre güncellemelerini küçük bir gecikme ile (bir gönderim aralığı artı ağ gecikmesi) görür.

Sunucu yetkisi

Workspace.AuthorityMode Sunucu olduğunda:

  • sunucu, tüm grafikler için yetkilidir — simülasyonu çalıştırır ve tam grafik durumunu çoğaltır.
  • Neler çoğaltılır: Hem parametreler hem de iç düğüm durumu, geçen süre, mevcut seçimler, geçiş ilerlemesi, döngü sayıları ve RNG tohumları dahil. Bu, tüm istemcilerin aynı animasyon davranışını görmesini sağlar.
  • Oyuncu karakterleri: Sunucu grafiği yönlendirir. Sahip istemcinin RunClient betiği otomatik olarak Animator üzerinde Enum.PredictionMode'u etkinleştirir, böylece yerel oyuncu, sunucu ile uyumsuzlukta uzlaşan pürüzsüz, tahmin edilen animasyonu görür.
  • NPC'ler: Sunucu, grafiği yalnızca yönlendirir; istemciler, yerel simülasyon olmaksızın çoğaltılan durumu gözlemler.

Parametreleri yönlendirme

Grafiği çalıştıran her betikten AnimationTrack:SetParameter() kullanın:

  • NPC (herhangi bir mod): AnimationTrack'a erişimi olan RunServer'dan SetParameter çağrısı yapın (veya herhangi bir sunucu Script).
  • Enum.AuthorityMode.Server içindeki oyuncu karakteri: Hem RunServer hem de RunClient'dan SetParameter çağrısı yapın. Sunucu, yetkili simülasyonu yönlendirmek için parametrelere ihtiyaç duyar ve sahip istemci, yerel tahminini yönlendirmek için aynı parametrelere ihtiyaç duyar.
  • Enum.AuthorityMode.Automatic içindeki oyuncu karakteri: RunClient'dan (veya AnimationTrack'a erişimi olan herhangi bir istemci LocalScript'ten) SetParameter çağrısı yapın.

Oluşturulan Animate betiği, bir başlangıç noktası olarak yorum satırı haline getirilmiş bir SetParameter bloğu içerir. Yorumunu kaldırın ve oyun durumu (hareket hızı, humanoid durumu, giriş yönü vb.) üzerinden parametreleri yönlendirmek için değiştirin.

©2026 Roblox Corporation. Roblox, the Roblox logo and Powering Imagination are among our registered and unregistered trademarks in the U.S. and other countries.