0
聽起來很奇怪(至少對我來說),但如果我在動畫的每一幀之前將畫布着色爲全白(使用fillRect調用),後續動畫的幀速率要高得多。即使已經指定了更新的alpha:標誌,也是如此。背景顏色是否會影響HTML5畫布中的幀頻?
奇怪(還)如果我只覆蓋一些畫布白色我也得到一個壞幀率。據推測,通過覆蓋整個畫布正在進行一些優化。那是對的嗎?
聽起來很奇怪(至少對我來說),但如果我在動畫的每一幀之前將畫布着色爲全白(使用fillRect調用),後續動畫的幀速率要高得多。即使已經指定了更新的alpha:標誌,也是如此。背景顏色是否會影響HTML5畫布中的幀頻?
奇怪(還)如果我只覆蓋一些畫布白色我也得到一個壞幀率。據推測,通過覆蓋整個畫布正在進行一些優化。那是對的嗎?
我懷疑你的推定是正確的。
GPU正在使用像素顏色數組繪製畫布。
如果所有這些顏色是相同的(例如,白色)的GPU可以簡單地floodfill用R,G,B,所有255的值數組(==快!)
如果某些顏色是不同的(例如,一個白色的矩形,但保留其他先前的圖紙),CPU和GPU必須一起工作來計算哪些現有像素要保留,哪些像素要改變。 (==較慢)。
你的意思是java ...? – Leo
糟糕 - 沒有 - HTML5畫布 – Richard