A model is a graphical object that can be added to or removed from a scene. It contains a hierarchy and any number of mesh instances.



graph: GraphNode = null

The root node of the model's graph node hierarchy.

meshInstances: MeshInstance[] = []

An array of MeshInstances contained in this model.

morphInstances: MorphInstance[] = []

An array of MorphInstances contained in this model.

skinInstances: SkinInstance[] = []

An array of SkinInstances contained in this model.


  • Clones a model. The returned model has a newly created hierarchy and mesh instances, but meshes are shared between the clone and the specified model.

    Returns Model

    A clone of the specified model.

    const clonedModel = model.clone();
  • Destroys skinning texture and possibly deletes vertex/index buffers of a model. Mesh is reference-counted, so buffers are only deleted if all models with referencing mesh instances were deleted. That means all in-scene models + the "base" one (asset.resource) which is created when the model is parsed. It is recommended to use asset.unload() instead, which will also remove the model from the scene.

    Returns void

  • Generates the necessary internal data for a model to be renderable as wireframe. Once this function has been called, any mesh instance in the model can have its renderStyle property set to RENDERSTYLE_WIREFRAME.

    Returns void

    for (let i = 0; i < model.meshInstances.length; i++) {
    model.meshInstances[i].renderStyle = pc.RENDERSTYLE_WIREFRAME;