A loader for loading a Material in JSON format. This uses the FileLoader internally for loading files.

Code Example

// instantiate a loader const loader = new v3d.MaterialLoader(); // load a resource loader.load( // resource URL 'path/to/material.json', // onLoad callback function(material) { object.material = material; }, // onProgress callback function(xhr) { console.log((xhr.loaded / xhr.total * 100) + '% loaded'); }, // onError callback function(err) { console.log('An error happened'); } );


MaterialLoader(manager : LoadingManager)

manager — The loadingManager for the loader to use. Default is v3d.DefaultLoadingManager.

Creates a new MaterialLoader.


See the base Loader class for common properties.

.textures : Object

Object holding any textures used by the material. See .setTextures.


See the base Loader class for common methods.

.load (url : String, onLoad : Function, onProgress : Function, onError : Function) : undefined

url — the path or URL to the file. This can also be a Data URI.
onLoad — Will be called when load completes. The argument will be the loaded Material.
onProgress (optional) — Will be called while load progresses. The argument will be the ProgressEvent instance, which contains .lengthComputable, .total and .loaded. If the server does not set the Content-Length header; .total will be 0.
onError (optional) — Will be called when load errors.

Begin loading from url.

.parse (json : Object) : Material

json — The json object containing the parameters of the Material.

Parse a JSON structure and create a new Material of the type json.type with parameters defined in the json object.

.setTextures (textures : Object) : this

textures — object containing any textures used by the material.


For more info on how to obtain the source code of this module see this page.