如何保存并加载Three.js场景?

3

我见过针对对象和其他物体的加载器,但是没有针对整个场景的。能否保存并加载three.js场景?

2个回答

7

您可以使用THREE.SceneLoader来实现此功能:

要导出,请使用以下内容:

var exporter = new THREE.SceneExporter();
var sceneJson = JSON.stringify(exporter.parse(scene));

要导入,请使用以下内容:

var sceneLoader = new THREE.SceneLoader();
sceneLoader.parse(JSON.parse(json), function (e) {scene = e.scene;}, '.');

以下是示例:

https://github.com/josdirksen/learning-threejs/blob/master/chapter-08/04-load-save-json-scene.html

加载器和导出器的源文件如下:


感谢您抽出时间回答我的问题。在尝试导出时,我遇到了一个奇怪的错误:“Uncaught SyntaxError: Unexpected token u”。这个导出器是否与最新版本的Three.js不兼容? - Kahless
刚刚用最新版本的Three.js进行测试,使用上面显示的完全相同的代码,它对我有效。 - Jos Dirksen
2
@Jos,这现在在哪里? - Toivo Säwén

3

看起来场景导出程序已经被废弃了。现在有一个GLTFExporter。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接