Javascript 清除WebGL画布,三个.JS
我正在使用three.js中的WebGLRenderer,无法清除画布。基本上,我有一个方法,不断向场景添加另一个对象,但在添加之前清除子对象。比如说Javascript 清除WebGL画布,三个.JS,javascript,canvas,opengl-es,three.js,webgl,Javascript,Canvas,Opengl Es,Three.js,Webgl,我正在使用three.js中的WebGLRenderer,无法清除画布。基本上,我有一个方法,不断向场景添加另一个对象,但在添加之前清除子对象。比如说 group = new THREE.Object3D(); function add(object){ group.children = [];//clears the group children first group.add(object); } 我想这会让事情变得明朗,但我错了。我已经习惯了为我做这件事。有人知道我应该
group = new THREE.Object3D();
function add(object){
group.children = [];//clears the group children first
group.add(object);
}
我想这会让事情变得明朗,但我错了。我已经习惯了为我做这件事。有人知道我应该如何清除WebGL画布吗?清除画布和清除场景图的子树是两件不同的事情 清除画布可以通过
renderer.clear()
来完成,假设您的THREE.WebGLRenderer
名为renderer
清除场景图的子树可以通过
group.remove.apply(group,group.children)
或(在现代JavaScript中)group.remove(…group.children)
完成。不建议只将一个新数组分配给group.children
,因为这会弄乱内部结构。使用组添加。添加(对象)
并使用组删除。删除(对象)
,查找.clear()
函数。我使用该函数时没有任何效果。group.remove(group.children);