This web player is for the Unreal Development Kit, and works very well without a browser plugin. I'm wondering how it is built.

How do I create a web player for a game engine written in C++?


closed as too broad by Gnemlock, DMGregory, Engineer, doppelgreener, Alexandre Vaillancourt Jun 15 '17 at 1:31

Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. Avoid asking multiple distinct questions at once. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

  • \$\begingroup\$ The web player you linked seems to be in Adobe Flash, but it should be possible to replicate with JavaScript, WebGL and WebAudio. This question is very broad. Is there a specific concept you're stuck with? \$\endgroup\$ – Anko Dec 17 '13 at 12:47
  • \$\begingroup\$ No it seems that it uses HTML5 see the page source \$\endgroup\$ – kochol Dec 17 '13 at 13:14
  • \$\begingroup\$ Are you sure? I may be wrong, but when I visit the page with a browser that doesn't support Flash, the game doesn't load, but informs me that I need Flash Player. \$\endgroup\$ – Anko Dec 17 '13 at 13:28

Emscripten can be used to port C++ applications to javascript. It was able to succesfully make the Unreal 3 engine run in a web browser.

It works best in browsers which support asm.js, an optimization-friendly subset of the Javascript language which can reach performance comparable to native code.


pepper.js allows you to write C++ code and then deploy directly as:

  • Machine code via PNaCl for higher performance, currently only supported by Chrome.
  • Javascript via Emscripten for maximum reach.

From the project page:

pepper.js is a JavaScript library that enables the compilation of native Pepper applications into JavaScript using Emscripten. This allows the simultaneous deployment of native code on the web both as a Portable Native Client (PNaCl) executable and as JavaScript. Native Pepper applications can now be run in Chrome, Firefox, Internet Explorer, Safari, and more.

Disclosure: I work on the Chrome team.


Not the answer you're looking for? Browse other questions tagged or ask your own question.