<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8" /> <script src="../../list.js"></script> <script src="../../page.js"></script> <link type="text/css" rel="stylesheet" href="../../page.css" /> </head> <body> [page:Loader] → <h1>[name]</h1> <div class="desc">A loader for loading objects in JSON format.</div> <h2>Constructor</h2> <h3>[name]( [page:Boolean showStatus] )</h3> <div> [page:Boolean showStatus] — Show the status of loading div. </div> <div> Creates a new [name]. </div> <h2>Properties</h2> <h3>[property:boolean withCredentials]</h3> <div> If true, the ajax request will use cookies. </div> <h2>Properties inherited from [page:Loader]</h2> <h3>[property:Boolean showStatus]</h3> <div>If true, show loading status in the statusDomElement.</div> <h3>[property:DOMElement statusDomElement]</h3> <div>This is the recipient of status messages.</div> <h3>[property:Function onLoadStart]</h3> <div>Will be called when load starts.</div> <div>The default is a function with empty body.</div> <!-- <h3>[property:Function onLoadProgress]</h3> <div>Will be called while load progresses.</div> <div>The default is a function with empty body.</div> --> <h3>[property:Function onLoadComplete]</h3> <div>Will be called when load completes.</div> <div>The default is a function with empty body.</div> <h2>Methods</h2> <h3>[method:null load]( [page:String url], [page:Function callback], [page:String texturePath] )</h3> <div> [page:String url] — required<br /> [page:Function callback] — required. Will be called when load completes. The arguments will be the loaded [page:Object3D] and the loaded [page:Array materials].<br /> [page:String texturePath] — optional. If not specified, textures will be assumed to be in the same folder as the Javascript model file. </div> <h3>[method:null loadAjaxJSON]([page:JSONLoader context], [page:String url], [page:Function callback], [page:String texturePath], [page:Function callbackProgress])</h3> <div> [page:JSONLoader context] — The [page:JSONLoader] instance<br /> [page:String url] — required<br /> [page:Function callback] — required. This function will be called with the loaded model as an instance of [page:Geometry geometry] when the load is completed.<br /> [page:String texturePath] — Base path for textures.<br /> [page:Function callbackProgress] — Will be called while load progresses. The argument will be an [page:Object] containing two attributes: .[page:Integer total] and .[page:Integer loaded] bytes. </div> <div> Begin loading from url and call <em>callback</em> with the parsed response content. </div> <h3>[method:Object3D parse]( [page:Object json], [page:String texturePath] )</h3> <div> [page:String json] — JSON object to parse.<br /> [page:String texturePath] — Base path for textures. </div> <div> Parse a <em>JSON</em> structure and return an [page:Object] containing the parsed .[page:Geometry] and .[page:Array materials]. </div> <h2>Methods inherited from [page:Loader]</h2> <h3>[method:Boolean needsTangents]( [page:Array materials] )</h3> <div> [page:Array materials] — an array of [page:Material] </div> <div> Checks if the loaded object needs tangents based on its materials. </div> <h3>[method:null updateProgress]( [page:object progress] )</h3> <div> [page:Object progress] — an object containing loaded(contains the amount of bytes loaded) and optionally total (containing the total amount of bytes). </div> <div> Updates the DOM object with the progress made. </div> <h3>[method:Material createMaterial]( [page:object m], [page:string texturePath] )</h3> <div> [page:Object m] — The parameters to create the material. <br /> [page:String texturePath] — The base path of the textures. </div> <div> Creates the Material based on the parameters m. </div> <h3>[method:Array initMaterials]( [page:Array materials], [page:string texturePath] )</h3> <div> [page:Array materials] — an array of parameters to create materials. <br /> [page:String texturePath] — The base path of the textures. </div> <div> Creates an array of [page:Material] based on the array of parameters m. The index of the parameters decide the correct index of the materials. </div> <h3>[method:String extractUrlBase]( [page:string url] )</h3> <div> [page:String url] — The url to extract the base url from. </div> <div> Extract the base from the URL. </div> <h3>[method:DOMElement addStatusElement]()</h3> <div> Add a DOM element to indicate the progress and return the DOMElement </div> <h2>Example</h2> <code> // instantiate a loader var loader = new THREE.JSONLoader(); // load a resource loader.load( // resource URL 'models/animated/monster/monster.js', // Function when resource is loaded function ( geometry, materials ) { var material = new THREE.MeshFaceMaterial( materials ); var object = new THREE.Mesh( geometry, material ); scene.add( object ); } ); </code> [example:webgl_loader_json_blender] <h2>Source</h2> [link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js] </body> </html>