|
@@ -38,9 +38,10 @@ Object.assign( JSONLoader.prototype, {
|
|
|
|
|
|
var scope = this;
|
|
|
|
|
|
- var texturePath = this.texturePath && ( typeof this.texturePath === 'string' ) ? this.texturePath : LoaderUtils.extractUrlBase( url );
|
|
|
+ var path = ( this.path === undefined ) ? LoaderUtils.extractUrlBase( url ) : this.path;
|
|
|
|
|
|
var loader = new FileLoader( this.manager );
|
|
|
+ loader.setPath( this.path );
|
|
|
loader.setWithCredentials( this.withCredentials );
|
|
|
loader.load( url, function ( text ) {
|
|
|
|
|
@@ -64,23 +65,30 @@ Object.assign( JSONLoader.prototype, {
|
|
|
|
|
|
}
|
|
|
|
|
|
- var object = scope.parse( json, texturePath );
|
|
|
+ var object = scope.parse( json, path );
|
|
|
onLoad( object.geometry, object.materials );
|
|
|
|
|
|
}, onProgress, onError );
|
|
|
|
|
|
},
|
|
|
|
|
|
- setCrossOrigin: function ( value ) {
|
|
|
+ setPath: function ( value ) {
|
|
|
|
|
|
- this.crossOrigin = value;
|
|
|
+ this.path = value;
|
|
|
return this;
|
|
|
|
|
|
},
|
|
|
|
|
|
- setTexturePath: function ( value ) {
|
|
|
+ setResourcePath: function ( value ) {
|
|
|
|
|
|
- this.texturePath = value;
|
|
|
+ this.resourcePath = value;
|
|
|
+ return this;
|
|
|
+
|
|
|
+ },
|
|
|
+
|
|
|
+ setCrossOrigin: function ( value ) {
|
|
|
+
|
|
|
+ this.crossOrigin = value;
|
|
|
return this;
|
|
|
|
|
|
},
|
|
@@ -528,7 +536,7 @@ Object.assign( JSONLoader.prototype, {
|
|
|
|
|
|
}
|
|
|
|
|
|
- return function parse( json, texturePath ) {
|
|
|
+ return function parse( json, path ) {
|
|
|
|
|
|
if ( json.data !== undefined ) {
|
|
|
|
|
@@ -563,7 +571,7 @@ Object.assign( JSONLoader.prototype, {
|
|
|
|
|
|
} else {
|
|
|
|
|
|
- var materials = Loader.prototype.initMaterials( json.materials, texturePath, this.crossOrigin );
|
|
|
+ var materials = Loader.prototype.initMaterials( json.materials, this.resourcePath || path, this.crossOrigin );
|
|
|
|
|
|
return { geometry: geometry, materials: materials };
|
|
|
|