我需要在每个渲染帧完成后拍摄一个屏幕截图,但我发现有些屏幕截图是重复的,所以我想知道在渲染完成之前我是否可以保存屏幕截图。因此...
答案 0 :(得分:1)
我创建了一个带有50k立方体的渲染测试,在我的笔记本电脑上大约需要6-10秒。
小提琴在这里:http://jsfiddle.net/1ma18gLf/
该功能根据测试进行阻止。使用浏览器控制台观看结果并查看base64图像。
然后问题就变成了无论JavaScript正在做什么,webGL都会单独绘制到画布上。
您可以在渲染之前尝试手动清除:
var renderer = new THREE.WebGLRenderer( { preserveDrawingBuffer: true } );
renderer.autoClear = false;
//In your render loop:
renderer.clear();
renderer.render( scene, camera );