SilverLight五種動畫處理比較

 
 
方法 優點 弊端 什麼時候使用合適?(建議) 什麼時候最好不要使用(建議)
DispatcherTimer
相對穩定
最小識別率約15毫秒(個人理解爲頻率過快將導致跳幀或無效,即極限爲15豪秒) 緩慢移動的物體,聯合Storyboard一同控制動畫 在處理一個移動非常快的物體對象時,建議使用Storyboard as Trigger或CompositionTarget.Rendering提高幀速率。
Storyboard 平滑的動畫 沒有複雜的運動效果,例如行星、遊戲等的無規則Path運動(這結論也太…… ^^||) 簡單的移動模式方面 如果想通過更多的後臺代碼去控制動畫,建議還是使用CompositionTarget.Rendering。(這建議真的很暈……)
Thread 基於線程,均衡的每幀運行。在多核中效果更好 在很短的間隔內不穩定(2幀間) 需要大量計算,耗CPU的處理 如果你的電腦只有1個CPU,或者需要更快的動畫效果,還是請選擇其他的方法
CompositionTarget.Rendering 非常穩定,保證會運行到位 無法進行細節控制,因爲頻率是固定的,基於畫面刷新觸發,公式:1000/<frames-per-secspecified-
in-html>
[msec]
複雜的邏輯,如遊戲中的一些循環等邏輯(原話看得不是很懂……) 一些瑣碎的處理,例如遊戲中的雲朵從左飄到右,則建議使用Storyboard代替。
Storyboard as Trigger 類似DispatcherTimer,在300FPS下運行流暢 和DispatcherTimer一樣 類似DispatcherTimer 和DispatcherTimer一樣
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章