2011-02-11 134 views
16

我想在我目前正在開發的網站上加入一些「花裏胡哨的功能」,但我不想讓整個機器陷入用戶使用。有沒有一種方法可以測試當前瀏覽器是否加速GPU?有沒有辦法以編程方式測試瀏覽器GPU加速?

我可以檢查UserAgent,但我總是聽說它不夠準確,不能信任。

我想我可以創建一個畫布元素,進行不少繪製調用,並計時?任何低於一定的門檻,我可以考慮足夠多的我的多餘的演員?這足夠好嗎?

回答

7

爲什麼GPU的加速問題很重要?唯一重要的是性能。

因此,即使可以找出是否存在GPU加速,計算canvas元素也是更好的選擇。

+1

好吧,我只是希望,如果有某種GPUEnabled標誌我可以檢查它會給我一個明確的是或否的能力,而不訴諸於一些破解。 – Emrikol 2011-02-11 18:16:25

+1

我的觀點是,GPU加速只是一個你不應該關心的實現細節。當您真正想知道性能成本是否可以接受時,IMO會檢查GPU加速是否是駭人聽聞,而不是相反。 – CodesInChaos 2011-02-11 18:44:23

1

不會被瀏覽器UserAgent黑客愚弄的最佳方式是檢查支持GPU加速的瀏覽器版本中包含的最新功能。您需要進行一些挖掘才能找到與GPU加速相同的版本中添加的內容。

請記住,當前GPU對畫布的支持在Windows上工作only - 所以你必須將所有OSX跑步機器排除在外,只在ie9,chrome 11和firefox 4中 - 所有這些機器無論是RC,貝塔或開發版本。

爲IE9例如: 只有IE有scrollabar顏色的CSS屬性,只有IE9形成所有的IE支持CSS透明度

function isIE9() { 
    var bodyStyle = document.body.style; 
    return (bodyStyle.scrollbar3dLightColor != undefined && bodyStyle.opacity != undefined) 
} 
相關問題