Frametime nedir, kaç olmalı?
Bir oyunun performansını analiz ederken muhtemelen çerçeve süresi anlamına gelen “Frametime” terimini duymuşsunuzdur. Bu kavram, saniyedeki kare sayısı veya FPS ile yakından ilgilidir, ancak tam olarak aynı değildirler. Faydalarını ve nasıl farklı olduklarını analiz edeceğiz.
Frametime tam olarak nedir?
Frametime, bir karenin oluşturulması ile bir sonrakinin oluşturulması arasındaki süre olarak tanımlanır. Bunun yerine, bir karenin ekranda ne kadar kaldığı hakkında konuşabiliriz.
Dolayısıyla 16 ms’lik belirli bir anda bir frametime’dan bahsedersek, bu süre içerisinde ekranda son frame’in olduğu anlamına gelir.
Bu tanımla birlikte her şey frametime ve FPS’nin neredeyse aynı olacağına işaret ediyor. Yani yaklaşık 60 FPS, saniyede görüntülenen 60 karedir, bu da ters sayımı yapmak bizi her kare için 16.67 ms’ye veya 16.67 ms kare süresine getirecektir.
Ancak, durum hiç de öyle değil. FPS ve çerçeve süresi arasında bir denklik yoktur ve her iki ölçümü de bu kadar önemli yapan ve bunlardan yalnızca birine bağımlı olmamamız da budur. Bunu size açıklıyoruz.
Frametime ile FPS farkı
İşin püf noktası, kare süresinin bize her karenin ne kadar sürdüğünü gösteren bir görüntü vermesi, FPS’nin ise bize bir saniye boyunca gösterilen tüm kareleri söylemesidir.
Örneğin, 60 FPS görüntülemek son derece faydalıdır, ancak her bir karenin kare süresi ile ilgisi yoktur.
Daha da netleştirmek için, 10 karenin bir saniyede (10 FPS) ancak kareler arasında farklı bir süre ile nasıl görüntülenebileceğinin grafiksel bir sunumunu yapacağız.
İkinci durum sürekli kendini tekrar ediyorsa ve çerçevelerin sunumu çok düzensizse, oyunlarda sürekli sarsıntılarla ciddi performans sorunları fark edeceksiniz.
Dolayısıyla FPS ve frametime’ın ne olduğunun bu tanıtımından sonra yüksek FPS’ye sahip olduğumuz hatta stabil olduğu halde performansın hala düşük olduğu bir durum olabileceği sonucuna varabiliriz.
Aslında bu kesinlikle hepimizin başına gelen bir şey ve en kötüsü önümüzde sadece FPS değerleri olsa açıklayamayız. Bu karışıklıkla karşı karşıya kalınca yapmanız gereken çözüm, çerçeve süresini izlemektir. Ne fazla ne az.
Nasıl izlenir ve sonuçlar nasıl yorumlanır?
Dediğimiz gibi, ne zaman yüksek FPS oranıyla sorun fark ederseniz, çerçeve süresini kontrol etmelisiniz. Bunun için ideal program MSI Afterburner’dır. Resmi web sitesinden indirebilirsiniz ve herhangi bir ekran kartıyla çalışır (MSI olması gerekmez).
Programı kurduktan sonra açın. Arayüzünde bir program ayarları simgesi bulacaksınız. Girin ve İzleme’ye erişin.
Burada Frametime seçeneklerini seçmeniz ve bu bilgiyi programın kendisinden de erişebileceğiniz Afterburner grafiklerinde buton ayarının hemen altında göstermek için (✓) işaretine tıklamanız gerekir.
Ayrıca ekrandaki bilgileri göster seçeneğine de tıklayabilirsiniz. Böylece siz oynarken Frametime ve FPS verileri görüntülenecektir. Bir grafiğin görüntülenmesi için en azından Çerçeve Zamanında metin, grafik seçeneğini seçin.
Şimdi, programın döndürdüğü çerçeve zamanı verilerini nasıl yorumlayacağız? Dikkat etmemiz gereken ilk şey, mümkün olduğunca istikrarlı ve tutarlı olmalarıdır. Açıkçası FPS’nin kararlılığı ile ilgilidir.
Buna ek olarak, değeri FPS sayısı arasındaki 1’in bölünmesine karşılık gelen değer civarında olmalıdır. Örneğin, bu aşağıdakiler için idealdir:
- 30 FPS: yaklaşık 33,3 milisaniye
- 60 FPS: yaklaşık 16.7 milisaniye
- 100 FPS: yaklaşık 10 milisaniye
- 150 FPS: yaklaşık 6,7 milisaniye
- 200 FPS: yaklaşık 5 milisaniye
Açıkçası, 16 ms’lik bir kare süresi bekliyorsak, 14, 15 veya 17 olduğu için hiçbir şey olmaz. Sorun, çok yüksek tepe noktaları görmekten kaynaklanır.
Bu sarsıntıların nedenleri nelerdir ve bunları nasıl çözebilirim?
Ve tüm bu sorunlar neden oluyor? Temel olarak, kötü bir çerçeve süresinin nedeni, çerçevenin oluşturulmasında, genellikle bir dış faktörden kaynaklanan bir gecikmedir.
Örneğin, bir oyunda 200 FPS’ye kadar üretim yapabilen bir ekran kartımız ve aşırı darboğazlı bir işlemcimiz varsa, birçok kareyi büyük gecikmelerle gizleyecek. Örneğin 60 FPS’lik bir performans ve performansı boşa harcayan tutarlı kare süresi artışı görebiliriz.
Sorun başka nedenlerden de kaynaklanabilir. Örneğin, bunun nedeni RAM’in çok dolu olması olabilir, bu nedenle CPU harekete geçmeden önce ikincil bellekte yer açmak için bir gecikme ortaya çıkar. Hatta düşük bellek hızından kaynaklanıyor olabilir.
Özetle, çok yüksek bir çerçeve süresi nedeniyle kekemeliği çözmenin en iyi yolu, sorunu CPU, GPU ve RAM kullanımına dayalı olarak teşhis etmeye çalışmak ve ayrıca bu bileşenlerin istediğimiz görevi yerine getirip getirmediğini kontrol etmektir.
Çerçeve süresi hakkında son sözler ve sonuç
Çerçeve süresi, oyun performansını analiz ederken en önemli ölçümlerden biridir. Saniyedeki kare sayısını (FPS) gördüğümüzde, bu karelerin süresinin zaman içinde düzenli olduğunu varsayıyoruz. Yani, 100 FPS’ye sahipsek, her saniye her 10 milisaniyede bir karenin başlatıldığını varsayıyoruz. Gerçekte, durum böyle değil, bu nedenle yüksek FPS’li oyunlarda sarsıntılardan veya kekemelerden nasıl muzdarip olduğumuzu görebiliriz.
FPS ile karşılaştırıldığında, kare süresi, her karenin bir sonraki işlenene kadar ne kadar sürdüğünü görmek için kullanılır. Bu nedenle, sonuçları bir grafikte temsil edersek ve bazı karelerin beklenenden daha uzun sürdüğünü görürsek, işte o zaman korkunç sarsıntılarla karşılaşırız.
Çerçeve süresini izlemek, örneğin MSI Afterburner ile yapabileceğimiz çok basit bir işlemdir. Performans hakkında bize verdiği bilgiler paha biçilmezdir ve CPU, GPU veya RAM kullanımı gibi diğer ölçümlerle karşılaştırarak sorunun nerede olduğunu teşhis edebiliriz.