前言
从外部资源中加载几何体,首先我们学会如何保存和加载Three.js
的JSON
格式文件。
案例
在Three.js
中导出JSON
文件非常容易,并且不需要引入额外的库。你需要做的只是将THREE.Mesh
导出为JSON
,代码如下:
// 保存数据到数据库
export function addProject() {
return new Promise(function(resolve, reject) {
// 将场景中的对象转换成json
let children = scene.toJSON();
// 响应回去
resolve(children);
});
}
那我们再怎么将保存的文件导入到Three.js
呢?
逻辑是:我们从本地存储当中将内容取出,转换成JSON
对象,然后再使用THREE.ObjectLoader
对象里面的方法,将对象转换成Three.js
可以识别的模型对象,再放入场景当中,代码如下:
export function addChildren(result) {
let loader = new THREE.ObjectLoader();
// 场景只有一个 先拿到数据保留到变量去
let obj = loader.parse(result);
scene.add(obj);
// 初始化渲染器
initThree();
// 初始化照相机
initCamera();
// 初始化灯光
initLight();
}