Why NASA abandoned Unity in favor of Blend4Web

Two years ago (or even more) there were publications about creating a similar scene for NASA at Unity. However, things did not go further than beta and the space agency refused to use Unity. There are interesting reasons that prompted the programmers of such a large organization to abandon their work and start work from scratch. I was not too lazy and found on the Internet mentionedbeta version of the Mars rover. Honestly, it sounds like an unfinished game. The scene slowly loads (terrain loads even longer), the functionality is just a ride, the picture is terrifying.
But we know that amazing games are made at Unity, and the portfolio is packed with hundreds of quality projects. So what's the deal?

Version on Unity
The fact is that Unity is seriously late with the final release of the exporter to WebGL. The first signal came when the creators of Google Chrome announced the upcoming abandonment of NPAPI. The percentage of users in the world working with this browser is too large for program developers to be able to leave them behind. Advice has appeared on the Internet to use the chrome magic command : // flags / # enable-npapi.However, in September 2015, this loophole will also be covered.
Creating games or presentations for websites is a business. No one likes to lose their customers. And if downloading the Unity web player before was not a hassle and it successfully competed with flash technology, now the situation has changed radically. The familiar web player is rapidly losing ground, and the exporter in WebGL is still in its "childhood" age.
Developers of all stripes made noise, demanding some active actions from the Unity team. And then the long-awaited event happened - the release of Unity 5 with WebGL, but only as a preview. Six months have passed, and things are still there. There was even a “brilliant” offer to check the user's browser and offer him to run the web player in some other. Unfortunately, for obvious reasons, this is not always acceptable.
And yet, what is happening with Unity with WebGL? Why does not the stable version come out? What are the prospects? These questions are interesting to many developers. I am not a techie and it’s hard for me to understand Unity’s problems in this area, but something found on the Internet inspires sad thoughts.
There is a thread on the official Unity forum called WebGL Roadmap. An official from the development team is explaining the future of WebGL at Unity. I looked up and down this text, and became more and more convinced that the “bright future” was only on the horizon.
WebGL by default should work on browsers for all platforms, including mobile. This is not there. And if by some miracle you compile your game in WebGL, then delete mobile devices from the list. The reasons are commonplace - a disastrously large memory consumption and poor performance. Yes, the game will start on a top-end device with a tolerable speed, but weaker ones will turn into turtles.
And do not hope that the project will work quietly on desktop systems. Browsers are programs that simply gobble up free computer memory and a raw build from Unity often causes tabs to drop or close. This is especially the case with Chrome.
There are certain problems with the sound. Personally, when I tried to export a simple game to WebGL, I got a croak when the hero moved. The sound stuck corny and really could not fix it. The reason is poor performance. But other engines sound ...
Forget about playing video in the game. The MovieTexture class is simply not supported for WebGL. As an alternative, developers suggest using the HTML5 features directly.
Network problems. The classes System.IO.Sockets and UnityEngine.Network do not work for WebGl and will not be in the future, as this causes security problems.
I did not list all the problems, but this does not answer the question, when will it work? Alas, the comments of Unity developers are slurred, foggy and without any specific timelines. Although I found something:
"We are not committing to specific release dates for any of these features, and we may decide not to go ahead with some of these at all."
"We do not fix specific implementation dates for any of these functions, and we can generally decide to abandon some."
They are waiting ... They are waiting for
WebGL 2.0 to appear, which will be based on OpenGL ES 3.0. A future version of Unity 5.2 is already planned with the ability to export to the new API. Just not the fact that browsers will immediately begin to fully work with it. While WebGL2.0 is available, as an experimental option.
Are waitingWebAssembly , which is very promising, but still in its infancy. There is no talk about the timing of its implementation.
Excuse me, if it only fixes the release of new third-party technologies, then perhaps the problem is the implementation of Unity WebGL?
Unity is a convenient, popular, and cross-platform engine. A great tool for creating games and I really like it. But still this is a tool that is no longer suitable for working with the web. The most unpleasant thing is that the future is too foggy.
Someone can tell me: “You are a pessimist!”. No, I'm just a realist. Realists and guys from NASA. In fact, this gives an answer to the question from the title: “Why did NASA abandon Unity in favor of Blend4Web?”.
They refused for a simple reason - Unity WebGL is not ready, but when will it be?
“We are not committing to specific release dates ...”
And what about Blend4Web? I can only congratulate the developers on their clearly convincing victory in the field of WebGL and be happy for our programmers, because the NASA presentation made on b4w will be shown at the opening of the WebGL section at SIGGRAPH 2015 . And this is a recognition.