FileLoader
类是 Three.js
中的一个工具类,用来加载外部文件数据。其中 load()
方法是用来加载文件的方法。
loader.load(url, onLoad, onProgress, onError);
url
:必需,表示需要加载的文件的路径或 URL。onLoad
:可选,一个加载成功的回调函数。onProgress
:可选,一个下载进度的回调函数。onError
:可选,一个加载失败的回调函数。FileLoader.load()
方法不返回任何内容。
var loader = new THREE.FileLoader();
// 加载器加载成功的回调函数
var onLoad = function(data) {
console.log(data);
};
// 加载器下载进度的回调函数
var onProgress = function(xhr) {
console.log((xhr.loaded / xhr.total * 100) + '% loaded');
};
// 加载器加载失败的回调函数
var onError = function(xhr) {
console.error('An error happened');
};
// 使用加载器加载文件
loader.load('models/model.obj', onLoad, onProgress, onError);
上述示例展示了如何使用 FileLoader
加载一个 obj
模型文件。当加载成功时,onLoad
回调函数将会被调用。在下载过程中,onProgress
回调函数将会被多次调用以报告加载进度。当加载失败时,onError
回调函数将会被调用。
FileLoader.load()
方法只支持加载文本格式的文件,对于二进制文件,应该使用 THREE.BinaryLoader
和 THREE.ImageLoader
等其他加载器。url
参数可以是一个相对路径,也可以是一个绝对路径或 URL。onProgress
回调函数中,xhr.loaded
表示当前已经下载的字节数,xhr.total
表示整个文件的字节数。onError
回调函数中,xhr
对象包含了关于失败的详细信息,可以使用 xhr.status
和 xhr.responseText
属性来获取。