无法使用纹理和路径渲染SKShapeNode

时间:2015-09-28 14:52:43

标签: objective-c ios8 ios9 skshapenode sktexture

我在我的场景中使用CGPath绘制了一个SKShapeNode。 strokeTexture只是一个圆圈。 在iOS8上它完美运行。在iOS9中,除非我删除纹理部分,否则它根本不起作用。 这是我的代码:

    SKTexture *pathTexture = [AtlasHelper getTexture:@"circle.png" fromAtlas:@"Common"];
    UIBezierPath *path = [UIBezierPath interpolateCGPointsWithHermite:pointsArray closed:NO];
    SKShapeNode *shape = [SKShapeNode shapeNodeWithPath:[path CGPath]];
    shape.strokeTexture = pathTexture;
    [shape setStrokeColor:[UIColor whiteColor]];
    shape.lineWidth = 20;
    shape.zPosition = zOrderAbovePopUps;
    [self addChild:shape];

注意: 1.Remove strokeTexture解决了它但是没有纹理的路径被绘制(这就是我需要的) 2.删除笔触颜色不会改变任何东西 这段代码的结果只是一个奇怪的,模糊的点:(

请帮帮我。

谢谢

1 个答案:

答案 0 :(得分:0)

更改此行:

[shape setStrokeColor:[UIColor whiteColor]];

有了这个:

shape.strokeColor = [SKColor colorWithRed:0/255.0f green:0/255.0f blue:0/255.0f alpha:1.0f];

然后你的纹理应该正常显示。