2011-03-24 19 views
13

Modern HTML5 tarayıcılarında çerçeve hızlarını, yani FPS'yi ölçmenin en doğru yolu nedir? Özellikle Canvas animasyonları için FPS ile ilgileniyorum.HTML5 Tarayıcısı Framerates (FPS) nasıl doğru bir şekilde ölçülür?

http://weblogs.mozillazine.org/roc/archives/2010/11/measuring_fps.html, setTimeout çalışmalarınızın ne sıklıkta gerçekleştiğini sayarak karmayı ölçmeye çalışacağınızı söyleyecektir. Tarayıcı, zaman aşımı geri bildirimini ekran boyaları arasında birçok kez çalıştırabilir.

Dışarı çıktığında, Mozilla'nın, doğru bir FPS sağlaması gereken bir window.mozPaintCount https://developer.mozilla.org/en/DOM/window.mozPaintCount mevcuttur. Ancak, bu sadece Mozilla için çalışıyor.

açık sorunu benzer bir şey Chrome için var oluyor: Chrome'da FPS hızlandırılmış http://code.google.com/p/chromium/issues/detail?id=65348

Manuel yolu donanımı kontrol etmek için (yayınlama tarihini itibariyle) Chrome Beta kanalını kapmak ve yaklaşık gitmektir: bayraklar ve FPS Sayacını aç. Ancak, Mac'te, hızlanma yalnızca WebGL'yi kullanırken açılır. Bu nedenle, Mac için Chrome'da FPS için Tuval'i kontrol etmenin bir yolu yoktur.

HTML5 FPS'yi doğru olarak ölçmek için başka stratejiler nelerdir?

Teşekkürler!

cevap

10

kontrol edin:

  • https://github.com/mrdoob/stats.js - bildiğim en iyi FPS telsizi. Ayrıca, mem/cpu kullanımı ile ilgili bazı istatistikler de sağlar (tarayıcınızı bu verileri açığa çıkarmak için özel parametreyle çalıştırmanız gerekir), ancak aynı zamanda tarif ettiğiniz yanlışlıktan da muzdarip olabilir. yeni krom kurar da

  • https://github.com/pcwalton/firefox-framerate-monitor

    , (muhtemelen kanarya stream) about:flags yılında FPS görüntülemek için bir seçenek olmalıdır.

  • +0

    Teşekkürler, Chrome'un şu andan itibaren FPS ekranını kullanıyorum: bayraklar, ancak bu yalnızca donanımın hızlandırıldığı herhangi bir şey olduğunda yanar. –

    +0

    Mrdoob'un stats.js'sini kontrol etmek zorundayım, FPS'yi nasıl ölçtüğünü merak ediyorum. –

    İlgili konular