怎样让敌人一直向目标移动不让节点旋转的方法

3.7.2
类似于 this.node.setPosition(x, y * dt * speed);
怎样让 x 跟 y同时向设定的目标移动 并且能设置移动速度

1赞

首先求得方向向量dir (目标点坐标减起点坐标);
然后归一化方向向量dir.normal();
那么每帧的位置偏移量为 dir.multScale(dt*speed);
然后用当前节点的坐标加上这个偏移量就行了。

1赞

let direction = new Vec3(0,0,0).subtract(this.node.position).normalize();

    let x = this.node.position.x;

    let y = this.node.position.y;

    this.node.setPosition(x + direction.multiplyScalar(deltaTime * this.speed).x, y + direction.multiplyScalar(deltaTime * this.speed).y)

这样吗 他不动啊 :sweat_smile:

看一下你算出来的增量是多少,应该要写成direction.clone().mult。不然你的direction会越来越小,导致后面算出来的值越来越小,看上去像不动。

感谢 可以了

console.log(“think you”);