是否可以在没有锯齿边缘的情况下将圆形遮罩/裁剪提供给图像节点?Sprite工具包中的裁剪/遮罩圆形图像节点会产生锯齿状边缘
继Apple的这个例子(https://developer.apple.com/reference/spritekit/skcropnode),结果并不理想。您可以点击链接查看。
let shapeNode = SKShapeNode()
shapeNode.physicsBody = SKPhysicsBody(circleOfRadius: radius)
shapeNode.physicsBody?.allowsRotation = false
shapeNode.strokeColor = SKColor.clearColor()
// Add a crop node to mask the profile image
// profile images (start off with place holder)
let scale = 1.0
let profileImageNode = SKSpriteNode(imageNamed: "PlaceholderUser")
profileImageNode.setScale(CGFloat(scale))
let circlePath = CGPathCreateWithEllipseInRect(CGRectMake(-radius, -radius, radius*2, radius*2), nil)
let circleMaskNode = SKShapeNode()
circleMaskNode.path = circlePath
circleMaskNode.zPosition = 12
circleMaskNode.name = "connection_node"
circleMaskNode.fillColor = SKColor.whiteColor()
circleMaskNode.strokeColor = SKColor.clearColor()
let zoom = SKAction.fadeInWithDuration(0.25)
circleMaskNode.runAction(zoom)
let cropNode = SKCropNode()
cropNode.maskNode = circleMaskNode
cropNode.addChild(profileImageNode)
cropNode.position = shapeNode.position
shapeNode.addChild(cropNode)
self.addChild(shapeNode)
你可以添加锯齿的截图吗? – Confused
点击我上面提供的链接。 :) https://developer.apple.com/reference/spritekit/skcropnode –
整体解决方案:https://stackoverflow.com/a/46894665/294884 – Fattie