Unity is a well-known cross-platform game engine that serves as the basis for many existing games. Unity started with Apple in 2005 and expanded to over 25 other platforms in 2018. It is used to build end-game mechanics such as 3D, virtual reality, augmented reality and simulation.
However, since 2017 there have been several reports from end-users and developers that Unity Web Player not working in various web browsers. This disaster was felt all over the world and it affected everyone.
What was the reason for this? In this article, we will go through all the causes of the problem along with the remedies that you can use to solve it.
Unity Web Player Not Working
As of 2019, most browsers no longer support Unity Web Player. Google Chrome, Firefox and other browsers fall into this category. Over time, many browsers began to end support for NPAPI plugins such as Unity3D Web Player and Java.
NPAPI (Netscape Plugin Application Programming Interface) is an API that facilitates the development of browser extensions. It was originally introduced in 1995 for the Netscape browser. As HTML5 grows in popularity and is supported in newer browser versions, plugins that use NPAPI are being phased out.
For anyone interested in more information, Unity Web Player stopped working in 2015 when the browser disabled something called NPAPI (Netscape Plugin Application Programming Interface). It used to be away for a plugin to have more access to your system (and execute arbitrary code).
Browser vendors have unanimously concluded that this form of access is insecure and therefore supports only standard HTML.
Unity (the firm) responded by dropping the Unity Web Player and developing a WebGL exporter based on industry standards.
How do I get Unity Web Player to work?
Even though Unity Web Player is officially deprecated and there is no option to enable it in newer browsers, there are several workarounds you can use to get the web player up and running.
We’ve mentioned a few strategies below that you can use, but keep in mind that there’s no guarantee that everything will go well (this is obvious since there’s no official support).
Be sure to start with the first solution and work your way up. They are listed in order of utility and complexity.
- Using Internet Explorer 11 and Safari
- Installing an Older Version of the Browser in Virtual Box
- Installing Extended Support Version of Firefox
- Enable Chrome NPAPI Flags
Let’s look at each solution one by one:
Solution 1: Use Internet Explorer 11 and Safari
Although most popular browsers have dropped support for Unity Web Player, the default browsers that come with the Windows and Mac operating systems do.
This indicates that “official” support is still available on these systems, although it may be removed shortly, or the browser itself (IE11) may be defective.
Before running the solution, make sure that you are logged in as an administrator on your computer.
- Visit the Unity Web Player official website and download Web Player for Windows or macOS.
- Restart your computer after installing the installer package. Press Windows + S, type “Internet Explorer” and launch the program.
If you have an Apple laptop or computer, you can use it to run Safari. Now try to open the hardware that was giving the error to see if that solves the problem.
Solution 2: Install an older version of the browser in Virtual Box
If you’re unable to get the experience you need on Internet Explorer or Safari, the only way to get Unity Web Player working in popular browsers is to download an older version of each and install it in Virtual Box.
We cannot install them directly into our main OS image because the newer version will already be installed (in most cases), and an older version cannot replace a newer version without causing harm.
Virtual Box is a program that allows users to create a sandbox (separate independent area) in an operating system so that other operating systems can be easily installed there. Before you begin, make sure that VirtualBox is installed on your computer.
- In your Virtual Box, start Windows 10. Now you need to install the browser versions listed below in your Virtual Box.
- Chromium Version 45
- firefox version 50
- Opera version 37
After installing the browsers, switch to the content that requires Unity Web Player and tries to start it. Check if it works properly and without any problems.
Solution 3: Install the Extended Support Version of Firefox
Firefox ESR (Extended Support Release) is a version of Firefox used by organizations or businesses that require extended support for large-scale deployments.
Compared to “fast” updates to the native Firefox app, Firefox ESR doesn’t get updated with new features every 6 weeks. Instead, only known updates containing critical or critical security updates are released.
Firefox ESR still supports NPAPI, including Unity Web Player. You can try to launch the content after downloading this version of Firefox. In most situations, everything will work as expected.
- Visit the official Firefox ESR website and download the 32-bit version for your language.
- When you right-click on the program, choose Run as administrator from the context menu.
- After installing the program, restart your computer and try to view the hardware to see if the problem is resolved.
Solution 4: Enable Chrome NPAPI Flags
If you have installed an older version of Chrome in your Virtual Box, but still can’t get Unity Web Player to work, you may have the NPAPI Chrome flag disabled in your browser settings.
If this feature is not enabled by default, it can be changed in the experimental settings. Under experimental settings, these features may speed things up your way, but they will have their downsides.
- Start the older version of Google Chrome that you downloaded in Solution 2.
- Type “chrome:/flags/#enable-npapi” in the address bar of the browser.
- The NPAPI control parameters will now be displayed. Relaunch the browser after clicking the Activate button.
- After relaunching, see if visiting the game/platform via browser fixes the problem.
If you’re a developer wondering if Unity Web Player will ever return, the answer is probably no. Unity Web Player has depreciated since it became available with better technology, more streamlines and more functionality.
You should consider converting your games/content to WebGL technology. Almost every company promotes these technologies (including Unity). You can check out Unity’s help page for how to build and operate a WebGL project. There will also be tons of instructions on how to transfer your game from one technology to another.