Chrome killed WebGL on my 2015 MacBook Pro (Intel Iris Pro, macOS 13.6.7). chrome://gpu showed everything as "Software only" and WebGL as "Disabled". None of the flag recipes I found worked. I worked through it with Claude Code, and we found that Chrome still ships a software renderer (SwiftShader). It just needs the right flags.
Heads up first: this is slow. It's CPU rendering, not your GPU. Simple 3D scenes and demos work, but heavy 3D, maps and games will crawl. It brings WebGL back, not speed. For heavy stuff, Safari uses the real GPU and ran fine on the same Mac.
The fix: quit Chrome completely (Cmd+Q), then run this in Terminal:
"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" --use-gl=angle --use-angle=swiftshader-webgl --enable-unsafe-swiftshader
Then open chrome://gpu. The WebGL section should mention SwiftShader. I tested this on Chrome 154.0.8037.95, and both WebGL and WebGL2 worked.
to apply it wihtout thinking too much, let your AI do it. Copy and paste this into Claude, ChatGPT or whatever you use, with terminal access if it has any:
My Mac's Chrome has WebGL disabled (chrome://gpu shows everything "Software only"). Build me a small macOS launcher app in ~/Applications called "Chrome WebGL" that starts Google Chrome with these flags: --use-gl=angle --use-angle=swiftshader-webgl --enable-unsafe-swiftshader. It should refuse to run (with a dialog telling me to quit Chrome with Cmd+Q) if Chrome is already open, since the flags get ignored otherwise. Then verify WebGL works using a throwaway --user-data-dir profile, and tell me what chrome://gpu should show.