I gave “File -> Package Project –> HTML5” a quick try with Unreal Engine.  This was a bit deja vu for me…  Because for one of my previous hobby projects I setup cross-platform (C++, SDL2, GLES2) on (Windows, OS X, Linux, Android, iOS, Emscripten) more “from scratch”…  And Unreal Engine also uses Emscripten for its HTML5 support.  I almost feel like I’m “cheating” letting Unreal Engine do most of the work for me, but the efficiency is good – because for this project I’m focused on building a game (rather than a game engine or graphics demos).  Plus my background with lower layers (GPU graphics, DirectX/OpenGL, cross-platform C++) makes me feel like I have a better idea of what Unreal Engine is doing “under the hood”.

I only had to fix one tiny error (replace std::abs() with FMath::Abs()) for the build to work on HTML5 (in addition to Windows + Android).  After building, I just ran HTML5LaunchHelper.exe, then opened a Chrome web browser pointing to ( http://localhost:8000//HeroQuest-HTML5-Shipping.html ).  UMG is working, and game logic appears to work (eg Move with arrow keys, End Turn)…  But the 3D actors are not displayed.  It’s not high on my priority list, but I’ll come back to HTML5 support later.

image image