How to enable WebGL on Chrome on XP?
Solution 1:
GPU rendering has been removed in XP, so theoretically it's not possible to have WebGL.
WebGL worked in build 291943 (v39.0.2138.0), but was removed in build 291976 (v39.0.2138.0).
The changelog contains the culprit commit:
Remove the use of d3dcompiler_43.dll.
It was only used for GPU rendering on Windows XP, which is now blacklisted.
BUG=407177
Review URL: https://codereview.chromium.org/506633002
Effectively, build 291976 only contains d3dcompiler_46.dll
, but not d3dcompiler_43.dll
.
So I had a crazy idea:
- Install a new version of Chromium (with no WebGL)
-
Replace its
d3dcompiler_46.dll
file withd3dcompiler_43.dll
from build 291943This enables WebGL until build 297440 (v40.0.2175.0).
However, it stops working again since build 297795 (version 40.0.2176.0).
I looked at the changelog but couldn't find the culprit commit.
-
Replace its
libGLESv2.dll
file withlibGLESv2.dll
from build 297440This enables WebGL until build 303843 (v41.0.2219.0).
However, it stops working again since build 303851 (v41.0.2219.0).
Given this changelog, the culprit seems this commit.
-
Replace its
libEGL.dll
file withlibEGL.dll
from build 303843This enables WebGL until build 337003 (v45.0.2446.0).
However, it stops working again since build 337025 (v45.0.2446.0).
I looked at the this changelog but couldn't find the culprit commit.
-
WebGL can be enabled again in build 337025 by replacing
chrome.dll
,chrome.exe
,chrome_child.dll
,natives_blob.bin
andsnapshot_blob.bin
from build 337003.However, that seems too much. I don't recommend it.
Warning: doing any of the steps above might make Chromium behave unreliably. Use at own risk.
In the steps above, "replace [X].dll
with [Y].dll
from build [N]
" means:
- Search the
[X].dll
file in the installation folder of Chromium - If there is no such file, go to step 4
- Otherwise, rename the file to
[X].backup.dll
- Download the portable (ZIP) version of the linked
build [N]
- Extract the
[Y].dll
file from the downloaded ZIP - Rename the extracted file to
[X].dll
- Move that file to the installation folder of Chromium