gpt4 book ai didi

apache-flex - TweenLite 序列在各个补间之间没有延迟

转载 作者:行者123 更新时间:2023-12-04 05:54:31 26 4
gpt4 key购买 nike

我正在开发一个游戏并实现了寻路算法。我的寻路返回了一组节点,角色必须通过这些节点才能到达目的地。基本上我需要一个节点一个节点地补间,所以我使用 TimelineLite 并将所有补间添加到序列中。有用。

然而,

在节点之间进行补间时会出现延迟(角色移动,然后停止,然后再次移动......),我无法弄清楚原因。我该如何解决?

这是代码:

    public function walk(startNode:Node,destinationNode:Node):void{
//retrieve the path of the character
var path:Array = Pathfinder.findPath(startNode,destinationNode,GenericMap.findConnectedNodes);
currentPath=path;
if(path!=null){
var pastX:Number;
var pastY:Number;
for(var index:int=0;index<path.length;index++)
{
var currentNode:Node = path[index] as Node;
testMoveThroughNodes(currentNode.x,currentNode.y);
}
}
}
private var speed:Number = 0.7;
private var timeline:TimelineLite = new TimelineLite();
/** tween the sprite through nodes of path*/

private function testMoveThroughNodes(targetX:Number,targetY:Number):void{
timeline.append(new TweenLite(monster,speed,{x:targetX,y:targetY}));
}

我能够对 TweenLite 的每个节点进行补间,但是它会移动、停止和移动,看起来完全不自然。

最佳答案

是的,在没有看到任何代码的情况下很难说,但我想知道这是否只是一个缓和问题,使它看起来像事情正在短暂停止,即使他们没有。请记住,默认的缓动是 Quad.easeOut,因此在每个补间结束时移动会减慢(以获得更自然的“感觉”)。如果你想要线性运动,你可以使用 Linear.easeNone。

关于apache-flex - TweenLite 序列在各个补间之间没有延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9680798/

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