code: function ( prepData, workerSupportExternal ) {
  		this._applyPrepData( prepData );
  		var available = prepData.checkResourceDescriptorFiles( prepData.resources,
  			[
  				{ ext: "obj", type: "ArrayBuffer", ignore: false },
  				{ ext: "mtl", type: "String", ignore: false },
  				{ ext: "zip", type: "String", ignore: true }
  			]
  		);
  		if ( THREE.LoaderSupport.Validator.isValid( workerSupportExternal ) ) {
  
  			this.terminateWorkerOnLoad = false;
  			this.workerSupport = workerSupportExternal;
  			this.logging.enabled = this.workerSupport.logging.enabled;
  			this.logging.debug = this.workerSupport.logging.debug;
  
  		}
  		var scope = this;
  		var onMaterialsLoaded = function ( materials ) {
  			if ( materials !== null ) scope.meshBuilder.setMaterials( materials );
  			scope._loadObj( available.obj, scope.callbacks.onLoad, null, null, scope.callbacks.onMeshAlter, prepData.useAsync );
  
  		};
  		this._loadMtl( available.mtl, onMaterialsLoaded, null, null, prepData.crossOrigin, prepData.materialOptions );
  	}
docs: Run the loader according the provided instructions.
  
  @param {THREE.LoaderSupport.PrepData} prepData All parameters and resources required for execution
  @param {THREE.LoaderSupport.WorkerSupport} [workerSupportExternal] Use pre-existing WorkerSupport