Can you stream specific meshes & textures from a HTML5 build?

I’d like to stream specific objects (meshes & their corresponding textures) of a HTML packaged game/application. e.g. - say, a simple game consists of 10 buildings and 4 roads, and a user walking down a road. Can one stream, say 3 buildings and one road initially - in the game only these objects are initially visible to the user. As the user walks further, other buildings & roads start becoming visible and those are then streamed.

For a game/application of several 100 MBs in size, this will be an essential requirement, as users may not want to download the entire HTML5 package. Especially, when browsing from phones/tablets over wireless networks.

Does one have any control over specific parts of the Javascript files of a HTML5 build? Is there any documentation of the HTML5 package architecture?

Hi interceptor,

Have you checked out , is this similar to what you are looking for?

If you are trying to procedurally generate content or stream in levels, this should definitely be feasible.

Hi - thanks for your response. From what I could see, is just a HTML packaged build, that has to be downloaded by a browser entirely before bring played?

What I am trying to achieve is “streaming the game content”. You could think of it as a client server architecture.


  1. The browser downloads the initial part of a game/app (e.g. the HTML packaged Engine, and a minimal starting scene of say, a few meshes) from the sever.

  2. As the game progresses, other meshes (.uassets?) are streamed to the browser, by the server, and are then rendered.

The reason for asking this is: if the game is very large (say 200 - 300 MB), it will be inconvenient to wait for the entire game to be first downloaded (especially over mobile wireless networks) and the played out.

In summary - can you package the HTML game/app an a client-server architecture, where .uassets are streamed from the server to the client? The client runs on browsers, while the server on a dedicated PC.

Thanks again!

does the following thread help you:

also, to help break up the game – make sure you also have “download maps on the fly” enabled.

when packaging with UE4 Editor, it is found in:

  • project settings → platforms → HTML5
  • under the packaging section

for testing with UE4 Frontend, it is found in:

  • Deploy, set to File server
  • select “HTML5” from drop down menu
  • and under Advanced Settings, check box the Streaming server option

the following post looks useful:

with those two features (async loading and download maps on the fly) – you should be able to make smaller startup sizes.


Can this also work for Android Daydream ?
I want my game to dynamically load assets, maps and levels and compile for HTML5 and Daydream…

another: It’s not possible to enable VR in HTML5 right ?


Thanks, that did help a bit. Still looking into it and will post if I have more Qs.