Sahne Analizi aracı, Roblox Studio'da, istemci ve sunucu sahnelerinizin nasıl bir araya getirildiğine, hangi kaynakları kullandığına ve hangi örneklerin bu kaynak kullanımından sorumlu olduğuna dair anlık karşılaştırmalı bilgi sağlayan bir dizi görünüm sunar. Sahne Analizi, oyun ve test oturumları sırasında kullanılmak üzere tasarlanmıştır ve hem istemci hem de sunucu veri modellerini inceleyebilir.

Sahne Analizini Etkinleştir
- Dosya > Beta Özellikleri altında Sahne Analizi'ni etkinleştir.
- Menü çubuğunda Pencere > Performans Özeti > Sahne Analizi'ni seç.
Sahne Analizini Kullan
Sahne Analizi, bir oyun veya test oturumu sırasında kullanılmak üzere tasarlanmıştır. Sahne Analizi penceresini açın ve mevcut modları gözden geçirin. Bir mod etkin olduğunda, kutucuklardan oluşan bir gösterim—kareleştirilmiş treemap görünümü—görüntülenen kaynakların ve bunlara katkıda bulunan örneklerin göreceli boyutlarını gösterir.
- Kareleştirilmiş treemap görünümünün altında, mevcut görünümdeki tüm öğelerin bir listesi bulunur.
- Sahne Analizi'nde, seçilen bir öğeye sağ tıklamak genellikle sizi Explorer'daki o öğeye doğrudan götürür.
- Geçerli görünümde isimle filtrelemek için arama çubuğunu kullanabilirsiniz.
Modlar
Sahne Analizi birçok farklı moda sahiptir; her bir mod farklı bir kullanım durumuna yöneliktir.
Script Hafızası
Bu görünüm, her Script, LocalScript ve ModuleScript'in Luau VM'de ne kadar bellek kullandığını gösterir. Bu, tablolar ve diğer script tahsisatları tarafından kullanılan bellek olup, animasyonlar, dokular ve sesler gibi varlıklar tarafından kullanılan bellek değildir. Görünüm, ayrıca scriptlerin yürütüldüğü yaygın konumlara ve Script ile ModuleScript arasındaki farklara göre daha fazla ayrılmaktadır.
Bağlı Olmayan Örnekler
Bağlı olmayan örnekler görünümü, hangi scriptlerin ve modüllerin örneklere referans tuttuğunu tür başına bir sayım olarak gösterir.
Örnekleri tutan scriptler normaldir ve kendi başına bir hata veya bellek sızıntısı belirtisi değildir. Ancak, bir bellek sızıntısını araştırıyorsanız, bu görünüm bir script'in beklemediğiniz bir şey yapıp yapmadığını kolayca saptamanıza yardımcı olur.
Bir bellek sızıntısının kök nedenini bulmakta hala zorlanıyorsanız, bu araç, bireysel tahsisatlar hakkında daha fazla bilgi sağlayabilen Luau heap aracına tamamlayıcıdır.
Bu görünümdeki herhangi bir script'e sağ tıkladığınızda, Explorer'da bunu doğrudan seçebilirsiniz.
Örnek Kompozisyonu
Örnek kompozisyonu görünümü, istemci veya sunucuda şu anda hangi örneklerin mevcut olduğunu gösterir. Bu, büyük ve karmaşık yapılar üzerinde çalışırken paha biçilmezdir; çünkü her örneğin hem çoğaltma hem de bellek maliyetleri vardır.
Karakterler, Geometri ve Dokular gibi kategoriler, sahnenizin nasıl dengelendiğini anlamanıza yardımcı olmak için tasarlanmıştır. Örneğin, belki de 25,000 parça emici istemediniz, ancak bu görünüm size bunu bildirir.
Bu görünüm ayrıca, belirli bir türden tüm örnekleri seçmenizi kolaylaştırır.
Ses Hafızası
Ses hafızası görünümü, her ses varlığının şu anda ne kadar bellek tükettiğini gösterir. Verilen bir ses parçasının kullandığı gerçek bellek oldukça karmaşıktır, ancak pratikte, belirli bir ses parçasına referans veren tüm örnekleri silmek, o belleğin boşaltılmasına izin verir.
Bu görünümdeki herhangi bir ses varlığına sağ tıklayarak, onu kullanan tüm örnekleri seçebilirsiniz.
Animasyon Hafızası
Animasyon varlıkları, üretimdeki en yaygın bellek sızıntısı kaynaklarından biridir. Roblox, kullanılmayan animasyon varlıklarını boşaltma konusunda oldukça agresiftir, ancak scriptlerin, üst model yok edildikten sonra animasyonları canlı tutması yaygındır.
Ses varlıklarında olduğu gibi, bir animasyon varlığına referans veren tüm örnekleri silmek, onun boşaltılmasına olanak tanır.
Bu görünüm, bağlı olmayan örnekler görünümüyle birlikte, animasyonların yaşam döngüsünü ve ne kadar bellek kullandıklarını takip etmeyi kolaylaştırır.
Bu görünümdeki herhangi bir animasyona sağ tıklayarak, onu kullanan tüm örnekleri seçebilirsiniz.
Üçgen Kompozisyonu
Üçgen kompozisyonu görünümü, ana görüntüleme alanında şu anda işlenen üçgenler ve draw çağrıları hakkında daha ayrıntılı bir analiz sunar.
Bu analizler, Gölgeler, Opaque, Şeffaf, Arazi, Ot, Partiküller, Gökyüzü ve UI için sayım içerir.
Bu kompozisyon bilgileri, sahne geometrinizin nasıl oluşturulduğunu anlamanıza yardımcı olur ve sahnenin beklenmedik bir geometri içerip içermediğini belirlemenizi sağlar.
Motor API'si
Ayrıca SceneAnalysisService aracılığıyla programlı olarak Sahne Analizi verilerine erişebilirsiniz; bu MCP sunucusu aracılığıyla sunulmaktadır. Her metod, görsel gösterimde kullanılan aynı verileri içeren iç içe çocuklardan oluşan tablolar döndürür.
| Yöntem | Açıklama |
| GetInstanceCompositionAsync | DataModel ağacından kategori ve sınıfa göre örnek sayısını döndürür. |
| GetScriptMemoryAsync | Her bir scriptin Luau VM heap bellek kullanımını bayt cinsinden döndürür. |
| GetUnparentedInstancesAsync | Luau tarafından tutulan ancak artık DataModel içinde olmayan örnekleri, ana script'e göre gruplandırarak döndürür. |
| GetTriangleCompositionAsync | Render geçişine göre üçgen ve draw çağrısı sayısını döndürür. |
| GetAnimationMemoryAsync | Tekrar eden animasyon klibi bellek kullanımını döndürür. |
| GetAudioMemoryAsync | Yüklenmiş ses varlığı bellek kullanımını, varlık kimliğine göre tekrar eden şekilde döndürür. |