Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript three.js编辑器不会执行位置更改脚本_Javascript_Three.js - Fatal编程技术网

Javascript three.js编辑器不会执行位置更改脚本

Javascript three.js编辑器不会执行位置更改脚本,javascript,three.js,Javascript,Three.js,免责声明:我使用three.js editor()作为ide创建一个包含6个对象和6个平行光的动画3d场景。场景本身将导出并显示,而不进行任何动画/位置更改。 当我尝试在下面添加此脚本以编辑对象的xy位置时,当我按“播放”时,场景将不会显示 var-box=this.getObjectByName('box'); var filledTube=this.getObjectByName('filledTube'); var ball=this.getObjectByName('ball'); v

免责声明:我使用three.js editor()作为ide创建一个包含6个对象和6个平行光的动画3d场景。场景本身将导出并显示,而不进行任何动画/位置更改。 当我尝试在下面添加此脚本以编辑对象的xy位置时,当我按“播放”时,场景将不会显示

var-box=this.getObjectByName('box');
var filledTube=this.getObjectByName('filledTube');
var ball=this.getObjectByName('ball');
var dice=this.getObjectByName('dice');
var tube=this.getObjectByName('tube');
var knot=this.getObjectByName('knot');
var blue1=this.getObjectByName('blue');
var blue2=this.getObjectByName('blue2');
var red1=this.getObjectByName('red');
var red2=this.getObjectByName('red2');
var green1=this.getObjectByName('green');
var green2=this.getObjectByName('green2');
功能更新(事件){
变量时间=(事件时间*.01);
box.position.x=-时间;
box.position.y=-时间;
filledTube.position.x=-时间;
filledTube.position.y=-时间;
ball.position.x=-时间;
ball.position.y=-时间;
dice.position.x=-时间;
dice.position.y=-时间;
tube.position.x=-时间;
tube.position.y=-时间;
knot.position.x=-时间;
knot.position.y=-时间;
blue1.position.x=+时间;
blue1.position.y=+时间;
blue2.position.x=+时间;
blue2.position.y=+时间;
red1.position.x=+时间;
red1.position.y=+时间;
red2.position.x=+时间;
red2.position.y=+时间;
绿色1.position.x=+时间;
绿色1.position.y=+时间;
绿色2.position.x=+时间;
绿色2.position.y=+时间;

}
在更新功能中尝试event.delta而不是event.time。我猜所有的物体都在快速移动

因此,在更新功能中:

var time = (event.delta*.01);

祝你好运

这个脚本很管用,可能把所有东西都“踢”到远处,看不见。 原因是event.time值非常大,即使它们是分开的

要查看这些对象并在场景中移动它们,请尝试以下操作:

var speed = 0.02;
box.position.x += speed; // adds 0.02 to the current box x position value
box.position.y -= speed; // subtracts 0.02 to the current box y position value
浏览器控制台是一个不错的工具,它可以帮助您跟踪值(例如:event.time)并解决问题

例如:在update函数中添加以下行,然后亲自查看巨大的时间值

console.log(event.time); // outputs time values
您可以了解更多有关console和