我正在使用tweenjs和Typescript来更改three.js多维数据集的x和y坐标。我创建了以下补间来更改类“FallingItem”的项目的x位置。Tween.js未调用更新函数
this.movementArcData.horzTween = new TWEEN.Tween(this.movementArcData.pos.x)
.to(this.movementArcData.newPos.x, this.movementArcData.movementTime * 1000)
.onUpdate(this.updateXPos)
.onComplete(this.horzTweenComplete);
其中 “this.movementArcData” 是包含以下内容的对象:
- horzTween - 吐温本身
pos.x - 项的原始位置
运动时间 - 完成运动所需的时间,2000毫秒
updateXPos - 具有以下代码的FallingItem对象的成员函数:
updateXPos(){ this.mesh.position.x = this.movementArcData.pos.x; console.log(“update x:”+ this.movementArcData.pos.x); }
horzTweenComplete - 用下面的代码的FallingItem对象的成员funtion:
horzTweenComplete(){
this.movementArcData.horzTweenComplete = true;
}
无论是updateXPos或horzTweenComplete回调被解雇。
我打电话TWEEN.update在我的渲染循环,像这样:
TWEEN.update(dt);
由于吐温的的onComplete事件永远不会触发时,TWEEN.update的不断呼吁。我错过了什么导致补间不能正常工作?