我正在使用Flash CS4,並且在測試我的應用程序時,我的幀速率隨編程時間而變化。當我嘗試在瀏覽器中運行應用程序時(嘗試Firefox 4,Opera 10.5和IE 8),幀速率不會改變。Flash瀏覽器中的Flash幀速率與Flash Player中的Flash幀速率不同
爲什麼幀速率沒有改變?我如何解決它?
我正在使用Flash CS4,並且在測試我的應用程序時,我的幀速率隨編程時間而變化。當我嘗試在瀏覽器中運行應用程序時(嘗試Firefox 4,Opera 10.5和IE 8),幀速率不會改變。Flash瀏覽器中的Flash幀速率與Flash Player中的Flash幀速率不同
爲什麼幀速率沒有改變?我如何解決它?
無論用什麼數字來設置幀速率,最新的Flash Player的上限值都是60fps。這可能是一個問題......但是如果屏幕上的物體變慢,那麼通過改變幀率就沒有什麼可以獲得的。這意味着你的swf沒有得到很好的優化,玩家正在努力渲染資產。
設置您的HTML,以便Flash對象的wmode是「不透明」(或者如果您真的需要透明的話)。如果你沒有指定它,它會將它解釋爲一些其他的默認參數,這會讓你在幀率性能上下降。
樣品:
<object type="application/x-shockwave-flash" data=
"YourFlashMovie.swf" width="640" height="480"
id="flash_id_1" style="visibility: visible;">
<param name="allowScriptAccess" value="always" />
<param name="allowScale" value="never" />
<param name="allowFullScreen" value="true" />
<param name="wmode" value="opaque" /> <!-- THIS IS WHAT YOU MUST SET -->
<param name="quality" value="high" />
<param name="scale" value="" />
<param name="scaleMode" value="" />
<param name="menu" value="false" />
</object>
希望有所幫助。
你是如何設置的,你如何測量幀速率? – dain 2011-05-17 11:59:20
我正在使用'stage.frameRate = speed;'設置幀速率。我不是通過將值輸出到屏幕或任何東西來測量它。顯而易見的是,我的物體沒有像應該那樣快速移動。 – 2011-05-17 12:06:39
許多瀏覽器對幀速率都有限制。我知道Chrome將其限制爲60fps,與Firefox相同。 – Cay 2011-05-17 12:38:03