【问题标题】:SKAction followPath, creating the pathSKAction followPath,创建路径
【发布时间】:2013-12-13 12:16:58
【问题描述】:

我正在使用一个简单的 A* 寻路算法来创建两点之间的路径(下面的绿色和红色圆圈),每个正方形是一个 SKSpriteNode(具有CGPoint [x,y] 位置)。我想沿着通过每个点的平滑路径为另一个 SKSpriteNode 设置动画。

我的想法是我可以使用 SKAction -followPath:duration: 来执行此操作,但我无法确定如何创建/指定 CGPath。任何帮助将不胜感激。

【问题讨论】:

    标签: ios path-finding sprite-kit cgpath skaction


    【解决方案1】:

    你可以像这样创建一个简单的 CGPath

    CGMutablePathRef path = CGPathCreateMutable();
    CGPathMoveToPoint(path, NULL, 0, 0);
    CGPathAddLineToPoint(path, NULL, 100, 0);
    CGPathAddLineToPoint(path, NULL, 100, 100);
    

    根据您想要实现的目标,您可以在路径中添加不同的元素,例如圆弧、曲线、矩形... 你可以在here找到更多相关信息。

    【讨论】:

    • 谢谢,请问,路径是平滑的还是只是 [x,y] 坐标之间的直线?
    • 当然,只需使用 CGContextAddCurveToPoint 而不是 CGPathAddLineToPoint。有一个不错的section on paths in Quartz 2D programming guide
    • 非常感谢,我现在看看,稍后再标记你的答案。再次感谢。
    • 你不能只交换曲线,如果你开始使用 CGContextAddCurveToPoint 那么路径是无效的,因为你需要指定上下文而不是路径。
    • 我的错,你应该使用 CGPathAddCurveToPoint,它取代了 CGContextAddCurveToPoint
    猜你喜欢
    • 1970-01-01
    • 2014-09-22
    • 2017-10-29
    • 2016-06-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多