[page:Loader] →

# [name]

以JSON格式来加载[page:Material]的加载器。 默认使用[page:FileLoader]进行加载文件。

## 代码示例

`// 初始化一个加载器 const loader = new THREE.MaterialLoader(); // 加载资源 loader.load( // 资源URL 'path/to/material.json', // onLoad回调 function ( material ) { object.material = material; }, // onProgress回调 function ( xhr ) { console.log( (xhr.loaded / xhr.total * 100) + '% loaded' ); }, // onError回调 function ( err ) { console.log( 'An error happened' ); } );`

## 构造函数

### [name]( [param:LoadingManager manager] )

[page:LoadingManager manager] — 加载器使用的[page:LoadingManager loadingManager]，默认为[page:LoadingManager THREE.DefaultLoadingManager].
创建要给新的[name].

## 属性

共有属性请参见其基类[page:Loader]。

### [property:Object textures]

持有材质的任何纹理的对象，请参考 [page:.setTextures].

## 方法

共有方法请参见其基类[page:Loader]。

### [method:undefined load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )

[page:String url] — 文件的URL或者路径，也可以为 [link:https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs Data URI].
[page:Function onLoad] — 加载完成时将调用。回调参数为将要加载的[page:Material]。
[page:Function onProgress] — 将在加载过程中进行调用，参数为进度事件。
[page:Function onError] — 在加载错误时被调用。
从URL中进行加载，并返回将包含数据的[page:Material]对象。

### [method:Material parse]( [param:Object json] )

[page:Object json] — JSON对象包含材质参数。
解析JSON结构，以json对象的参数中的[page:String json.type]类型，创建一个新的[page:Material]。

### [method:this setTextures]( [param:Object textures] )

[page:Object textures] — 对象包含任何被材质所使用的纹理。

## 源

[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]