How to load assets runtime


Is it possible to load assets little by little during play? Fbx can be heavy to preload at startup only

Heavy bugs within the 'scene change' functionality

FBX: not really
The converted model JSON however, can be loaded at runtime.

There are two ways:

  1. Untick the preload box on the asset and use the asset registry to load it at runtime. (see project examples here: and tutorials here:
  2. Host the model/textures/etc assets somewhere else and load them at runtime. (see posts here: Load 3D models at run time from a PlayCanvas application)

Option 1 is the easiest out of the two.


Is there another option to load an asset directly from memory (e.g. Json in a variable)?

Something like this?

my_json = JSON.parse(my_json);

var loader = new pc.ResourceLoader();
var new_model ="model", my_json);
var asset = new pc.Asset(


@Mystik See: How to create/load asset from Json variable (not from file or url)?


Personally I am now moving in a direction of loading scenes (with new assets within those). This troubleshoots the cost problem, but it raises other issues concerning ‘scene change’ in PlayCanvas as a whole.


The most present issues relating ‘scene change’: Heavy bugs within the 'scene change' functionality