2017-05-05 62 views
0

原帖hereChrome中的WebGL軟件回退沒有被使用

我的印象是,WebGL的應該在Chrome瀏覽器幾乎所有的桌面設備上,但它可能會回落到在某些情況下,軟件渲染下(假設你不及格failIfMajorPerformanceCaveat =真獲取上下文時) 。然而在實踐中,這對Mac和Windows上的大量用戶(特別是,但不限於某些受管理的公司IT系統內的用戶)似乎並非如此。

至於我可以告訴大家,在哪裏WebGL的瀏覽器中禁用所有的硬件/設置,可以使用不同的瀏覽器(FF,甚至IE11)來運行它。我相信IE11只使用軟件,而FF可能對其列入黑名單的GPU並不嚴格,但這並不能解釋爲什麼當硬件不可用時Chrome無法切換到軟件。事實上,在某些情況下,在Chrome中重寫GPU黑名單似乎行得通(但大概不是一個好主意)。

所以,首先,我可以檢查我對形勢的判斷是正確的?其次,任何人都可以建議如何強制軟件渲染(即標誌等)和/或指出我在討論這個問題?

任何意見將是非常讚賞 - 即使過程相當複雜它仍然是值得了解的,因爲它可能是可行的爲我們的客戶。

更新:

@gman指出,有Mac電腦上的Chrome沒有軟件仿真,但仍有在Windows這是怎麼回事的問題。

更新2:

(部分地回答我的問題):看來(至少在Windows上的32位瀏覽器),如果你去chrome://components看看SwiftShader是0.0.0版本,然後只需打更新按鈕應該下載最新的veriso,n和hey presto ..它的作品。雖然不確定64位Chrome。

更新3:

由於@Nicloas說,M59在Chrome(以5/6月2017年發佈)應該可以解決這個問題,在Chrome在Windows和Linux,與Mac後來以下。

+0

AFAIK Chrome的軟件渲染僅適用於Windows。有一些錯誤提交給它,但它的優先級低。 [這是一個](https://bugs.chromium.org/p/chromium/issues/detail?id=160392)。軟件渲染速度非常慢。對於大多數WebGL用例來說太慢了。 – gman

+0

嗯。也許這解釋了Mac的問題,但我們也有Windows的問題..? –

回答

1

引用我自己的答案從[email protected]

我很高興地告訴你,隨着Chrome瀏覽器即將發佈M59,我們已經整合SwiftShader在情況下,提供了無縫的WebGL支持回退GPU被列入黑名單。

我們以前只用SwiftShader作爲一個單獨下載組件,它確實不會對企業管理系統的工作,以及所需重新啓動瀏覽器。整合SwiftShader只有在開源並大幅減少二進制大小之後纔可能實現。

可以使用Chrome Canary版或測試版,並指定--disable GPU的推出標誌今天測試它在Windows上。 Linux也應該可以工作,但這些庫錯誤地不作爲測試版包的一部分發布,我們希望在下一次更新中並且在它到達Stable頻道之前將其糾正。我們還沒有開始整合Mac OS X的支持,因爲Chrome在這方面的工作有很大的不同,但它在我們的視線中。

+0

感謝您的快速回答,並感謝您的基礎工作! (我不能在24小時內獎賞賞金)。看起來M59將會在4周左右(對我的用戶來說可能是好的),但是我可以檢查'chrome://中的更新按鈕組件「可能會在此期間工作?我發現至少有一個案例(在browserstack),它的工作。 –

+0

只有32位組件曾經服務過,所以64位版本的Chrome沒有得到SwiftShader。我們可以添加一個64位組件,但決定集中精力爲每個人創建完全無縫的後備支持。它將M59推向32位和64位Windows和Linux,Mac OS X應該不會太落後。 –