If you use Google’s web browser Chrome, you might notice that Unity games embedded in web pages no longer work as of the latest update. As they’ve planned to since 2013, Google have disabled support for the way the Unity plugin works. Unity 5 does support WebGL, which works without plugins, but for now that’ll leave a whole load of browser games not working. You can re-enable support temporarily, if you don’t mind digging in settings, or simply use a different browser.
It’s been a while since I had to fire up another browser to visit certain websites that wouldn’t work properly in mine. It’s like the browser wars all over again!
Let’s get technical! Unity’s plugin relies on ye olde Netscape Plug-in API, which Google say is old and busted. “NPAPI’s 90s-era architecture has become a leading cause of hangs, crashes, security incidents, and code complexity,” they explained in 2013 when announcing plans to remove it from Chrome. The API is also used by things like Silverlight and Java. They plan to remove NPAPI support entirely in September, and started towards that this week by disabling it with version 42 of Chrome.
As Robert Yang points out on Twitter, you can re-enable support for now by going into Chrome’s experimental setttings and looking for the ‘Enable NPAPI Mac, Windows’ setting. Come September, that option will be gone.
The latest version of Unity does support exporting games to WebGL, which runs natively in modern browsers. That’ll be the way for developers to go in future, but all those already-released browser games will be busted in Chrome. Still, this will give me reasons to fire up Internet Explorer again – it does always seem so happy to see me when I accidentally load it.