2016-05-23 52 views
0

我正在使用html5製作2D遊戲。我使用緩衝區和putImageData進行渲染。一切都很好,幾分鐘。幀速率沒有問題,控制檯中沒有任何東西彈出。Chrome選項卡在渲染幾分鐘後崩潰

當我說選項卡崩潰時,我說的是「Aw,Snap!顯示此網頁時出現錯誤。」 javascript控制檯顯示「DevTools與頁面斷開連接,頁面重新加載後,DevTools會自動重新連接。」 Chrome沒有提及任何有關錯誤的細節。

如果需要,我可以鏈接源的副本。我不覺得這很重要,因爲這已經發生在我的許多帆布項目中。這些項目之間唯一相似的地方是我使用canvas 2d上下文和requestAnimationFrame。

- 編輯 -

我發現了一個變通。使用document.hidden,我可以決定只在頁面可見時才渲染。

+0

你有其他瀏覽器的問題嗎?你可能想檢查你的應用程序的內存泄漏 – InsOp

+0

你可能會發現這有用,以檢測gpu內存泄漏: https://developer.chrome.com/devtools/docs/rendering-settings – InsOp

+1

'.getImageData與.putImageData '是內存密集型的,可能不應該在動畫循環中完成。你檢查過你的內存使用情況嗎? – markE

回答

0

我找到了解決辦法。使用document.hidden,我可以決定只在頁面可見時才渲染。