可以在三.js的字节数组中加载图像和模型
Is is possible to load images and models from a byte array in three.js?
>我知道在三个中.js我们可以使用 ImageUtils 直接从服务器加载图像,使用 JSONLoader 将模型作为.js文件加载,但是是否可以直接从字节数组加载图像和模型? (例如,下载一个压缩文件,在 JavaScript 中提取它并将字节数组直接输入加载器?
谢谢
好吧,我找到了答案。
这可以通过将我们自己的扩展方法添加到相关对象来完成。对于纹理加载,我们可以通过向 imageutils 添加一个新方法来加载二进制数组,如下所示:
THREE.ImageUtils.prototype.loadTextureBinary = function ( data, mapping, callback ) {
var image = new Image(), texture = new THREE.Texture( image, mapping );
image.onload = function () { texture.needsUpdate = true; if ( callback ) callback( this ); };
image.crossOrigin = this.crossOrigin;
image.src = "data:image/png;base64," + Base64.encode(data);
return texture;
};
要加载字符串 JSON,请提取数据并将其转换为字符串并将其传递给 JSONLoader 的这个新扩展方法:
THREE.JSONLoader.prototype.loadJson = function ( data, callback, texturePath ) {
var worker, scope = this;
texturePath = texturePath ? texturePath : this.extractUrlBase( url );
this.onLoadStart();
var json = JSON.parse( data );
context.createModel( json, callback, texturePath );
};
注意:上面的代码适用于 Three.js r49。如果较新版本有代码更改,请将它们添加到上述方法以符合要求。
相关文章:
- 如何在PHP数组中加载下一个youtube
- Javascript图像数组预加载速度和从内存中删除
- 数组在手动写入时有效,但从文本文件加载时无效
- 正在从字节数组加载图像内容
- 读取外部local.txt文件以将数据加载到数组中
- Jquery数组-设置和加载值
- 使用RequireJS从数组动态加载模块
- 如何将嵌套的JSON / C#数组加载到视图模型中?使用Knockout,jQuery
- 创建可重复的 HTML 表单并从 JS 数组加载信息
- Javascript:数组加数字
- 如何将 json 编码数组加载为 c3.js 的 x 轴
- 为从数组加载的数据指定id标签
- php数组加载到javascript中
- Javascript未将图像对象从数组加载到画布上
- 使用c#将javascript数组加载到c#数据表中
- 从Javascript数组加载下拉列表并使用angularjs设置选定值的最简单方法
- 如何给<选项>从数组加载的标签
- 用递归数组加载递归组件
- 从数组加载的幻灯片图像
- 捕获csv下载作为数组加载而不是使用Google Script