Javascript 如何在Three.js中随时间添加/删除对象
我想添加和删除带有句点的对象。例如,我有一个包含50个对象的数组。我想在删除前一个句点的同时添加带有句点的对象,就像创建对象流一样。首先,我尝试使用setTimeout和setInterval函数,但它们都不起作用(渲染函数内部和外部)。然后我尝试了这个Javascript 如何在Three.js中随时间添加/删除对象,javascript,time,timer,three.js,Javascript,Time,Timer,Three.js,我想添加和删除带有句点的对象。例如,我有一个包含50个对象的数组。我想在删除前一个句点的同时添加带有句点的对象,就像创建对象流一样。首先,我尝试使用setTimeout和setInterval函数,但它们都不起作用(渲染函数内部和外部)。然后我尝试了这个 function render(){ controls.update(clock.getDelta()); renderer.render( scene, camera); i = i+1; if (i % 2
function render(){
controls.update(clock.getDelta());
renderer.render( scene, camera);
i = i+1;
if (i % 2 == 0){
if (i % 300 == 0){
remove(lights);
}
else
{ scene.add(lights[(i/2)]);
}
}
}
它可以工作,但不会开始向第一个对象添加进程。我还尝试了getElapsedtime()而不是迭代I,但这次它只添加了第一个对象。有没有比这更有效的时间控制方法
非常感谢 像这样的方法会奏效:
var spotOn = true;
window.setInterval(function(){spot()},milliseconds);
function spot() {
var i;
if(spotOn) {
for(i = 0; i < lights.length; ++i) {
scene.add(lights[i]);
}
} else {
for(i = 0; i < lights.length; ++i) {
scene.remove(lights[i]);
}
}
spotOn = !spotOn;
}
function render(){
renderer.render( scene, camera);
}
var spotOn=true;
setInterval(函数(){spot()},毫秒);
功能点(){
var i;
如果(斯波顿){
对于(i=0;i