7

我想创建一个内容为图像(.png)的圆圈,并且基于 SKShapeNode 类引用,我认为我可以使用 SKShapeNode.filltexture() 函数将纹理设置为图像。但是当我运行下面的代码时,我得到了圆圈,但是我试图加载的“cat-black”的图像没有显示。我检查了我的 Image.Assets 中的图像名称是否正确,所以还有其他问题。有任何想法吗?我附上了下面的输出:

 func newCircle(photo:String, position:CGPoint) -> SKShapeNode {

    let circle = SKShapeNode.init(circleOfRadius: 27)
    circle.fillTexture = SKTexture.init(image: UIImage(named: "cat-black")!)
    circle.strokeColor = UIColor.greenColor()
    circle.lineWidth = 4
    circle.name = "aggroNode"
    circle.position = position
    return circle

}

在此处输入图像描述

4

1 回答 1

17

该文件指出

默认值为无。如果指定了填充纹理,则忽略 fillColor 属性,并使用纹理来渲染形状节点的填充部分[强调添加]。

这表明必须填充形状,否则纹理将不可见;因此,如果您将形状的填充颜色设置为

circle.fillColor = .white

纹理将出现。您还可以设置fillColor不同的颜色来为纹理着色:

circle.fillColor = .blue
于 2015-12-26T05:55:33.627 回答