gpt4 book ai didi

ios - 动画时移动 Action

转载 作者:搜寻专家 更新时间:2023-10-30 20:18:35 26 4
gpt4 key购买 nike

我正在尝试让角色在用户触摸时从 A 点移动到 B 点。

我目前正在使用 SKActions(在一个组中)执行此操作。但是,我注意到 SKActions 需要持续时间,因此不会有恒定的移动速度,这是一个交易破坏者。较近的距离会使角色移动得更慢,而较远的距离会使角色移动得更快。

有更好的方法吗?我正在考虑在场景中使用 -update 方法,但不确定将其与触摸事件相关联的最佳方法是什么。

有什么建议吗?

最佳答案

您需要做的就是使用距离和速度自行计算持续时间。

速度 = 距离/时间,时间是你的持续时间,所以求解 t。

在这里使用一些伪代码:

function moveToWithSpeed(p1, endPoint: p2, speed: speed)
{
//credit: http://stackoverflow.com/questions/1906511/how-to-find-the-distance-between-two-cg-points
CGFloat xDist = (p2.x - p1.x);
CGFloat yDist = (p2.y - p1.y);
CGFloat distance = sqrt((xDist * xDist) + (yDist * yDist));
duration = distance/speed

SKAction.moveTo(p2, duration: duration);
}

剩下的我想你可以自己想办法。

关于ios - 动画时移动 Action ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19820768/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com