我的SKSpriteNode沿逆时针方向跟随此路径,我该如何使它沿着顺时针方向的路径?
提前致谢!
CGPathRef circle = CGPathCreateWithEllipseInRect(CGRectMake(0,0,50,50), NULL);
SKAction *followTrack = [SKAction followPath:circle asOffset:YES orientToPath:YES duration:5.0];
SKAction *forever = [SKAction repeatActionForever:followTrack];
[player2 runAction:forever];
答案 0 :(得分:7)
而不是CGPathCreateWithEllipseInRect()
,使用CGPathCreateMutable()
和CGPathAddArc()
创建圈子路径并使用clockwise
参数来控制
方向。
未经测试的代码:
CGMutablePathRef circle = CGPathCreateMutable();
CGPathAddArc(circle, NULL, 25, 25, 25, 0, 2*M_PI, true);
CGPathCloseSubpath(circle);
答案 1 :(得分:0)
从Martin的回答中,一些变化导致对象在同一个地方开始和结束:
目标C
CGMutablePathRef circle = CGPathCreateMutable();
CGPathAddArc(circle, NULL, -25, 0, 25, 0, 2*M_PI, true);
CGPathCloseSubpath(circle);
在swift中
let path = CGPathCreateMutable()
CGPathAddArc(path, nil, -25, 0, 25, 0, CGFloat(2.0 * M_PI), true)
CGPathCloseSubpath(path)