THREE.js静态场景,检测webgl渲染完成时

时间:2014-12-05 15:07:07

标签: javascript three.js webgl

我正在创建一个包含大量对象的静态场景,我希望在渲染后保存为图像。我如何在THREE.js r69中做到这一点?

1 个答案:

答案 0 :(得分:0)

最有可能的是,你没有朝着正确的方向前进。

如果你有这样的功能

function animate() {
    requestAnimationFrame(animate);
    render ();
}

渲染工作一直在进行。

当你看到场景未完成时,它是因为网格尚未完成加载,而不是因为渲染没有完成渲染。

所以,你必须在你正在加载的模型上听一些onload事件,这取决于你用来加载它们的方法(而且你不能解释,所以我可以'帮助你更多)

根据您回复中的代码,将网格添加到场景时不清楚。无论如何,我会尝试一下

function loaderCallback() {
    mesh = new THREE.Mesh (...
    scene.add (mesh);
    requestAnimationFrame(saveImage);
    render ();
}

在渲染完成时应该调用requestAnimationFrame调用的函数。