DoTween DoPath在航点之间的速度



我有一个关于道路之间的dopath速度的问题。我想要从头到尾持续不断的速度,但我无法实现这一目标。但是速度在航向之间变化。

我找不到解决我的问题的解决方案。

Vector3 firstPoint = from+new Vector3(5f,5f,0);
pathList.Add(from);
pathList.Add(firstPoint);
pathList.Add(to);

Vector3[] pathArr = pathList.ToArray();
GameObject trail = Instantiate(config.fireWork, from, Quaternion.identity);
       trail.transform.DOPath(pathArr,3,PathType.CatmullRom,PathMode.TopDown2D).SetEase(Ease.Linear).SetLookAt(0.01f).SetDelay(1f);

https://gfycat.com/highunknowentoopenguin

我想要从头到尾持续不断的速度。

看起来只需要在补间的持续时间内。

您可能必须使用通用方式:DOTween.To(...)

获取当前点之间的距离,并将其除以运动速度。

如果放置 .SetSpeedBased(true),则持续时间将表示二元组移动x second的单位数。

P.S。您还可以设置.SetLoops(-1)执行将循环在路径上。

i解决了问题,dopath函数没有错。这是关于我的媒介。我的游戏是2D,但向量的Z值很高。因此,导弹在2D中似乎很快。我更改了解决问题的z值。感谢@demigiant的帮助。

最新更新