我有幾個相當簡單的動畫(移動文本,移動橢圓等),並在全屏(1920x1080減去任務欄)中運行,WPF性能套件在整個動畫中報告50 FPS左右的良好幀率。 Dirty Rect Addition約爲300 rect/s,SW幀在0到4之間,硬件幀在3到5之間。視頻內存使用量約爲80 MB。如何知道爲什麼動畫會造成口吃?
問題是,動畫口吃每隔半秒。這是絕對不流暢:-(
我的機器是一個新的戴爾筆記本電腦XPS 15與GeForce GT 435 2GB內存 - 驅動程序是最新的(同樣的行爲發生在我的上網本(全屏幕),以及,所以我不認爲這是硬件相關的)
如果我使窗口越小口吃消失
用最簡單的動畫會出現口吃。 - 即使只是一對夫婦的元素但增加更多的元素肯定會使其更加引人注目。
如何找出原因這個口吃?
當我想到它時,我還沒有看到任何WPF動畫在全屏幕中平穩運行。這甚至有可能嗎?
也許你是在重新粉刷太多?即即使兩幀之間沒有改變的像素都被標記爲髒。 – 2011-04-12 16:24:20
偉大的問題!作爲一項測試,你有沒有試過只留下一個動畫控件來查看口吃是否繼續?如果沒有,那麼,你如何更新所有控件的數據,這意味着它全部在同一個線程上,或者你是產生任務/並行方法,然後當他們完成更新UI(在UI線程上)? – 2012-04-19 15:49:25
>當我想到它時,我實際上沒有看到任何WPF動畫在全屏幕中平穩運行。 啊哈! WPF非常慢。你可以做的最好的方式是製作更復雜的用戶界面,降低幀率或等待WTF框架解決所有這些問題; P – 2012-07-10 13:50:41