DoTween DoPath在航点之间的速度

时间:2019-06-25 06:28:56

标签: unity3d dotween

我对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/highunknowngentoopenguin

我要始终保持恒定的速度。

2 个答案:

答案 0 :(得分:0)

看起来只需要补间的时间即可。

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

获取当前点之间的距离,然后除以您的移动速度。

答案 1 :(得分:0)

我解决了问题,DoPath函数没有错。这是关于我的媒介。我的游戏是2D,但是向量的Z值非常高。因此,导弹在2D中看起来非常快。我将Z值从和更改为已解决的值。感谢@Demigiant的帮助。