SKEffectNode, SpriteKit инвертируют цвет в Swift

Я хочу инвертировать цвет со стороны HelloLable который находится за пределами boxSprite. Я знаю, что это возможно с SKEffectNode, но я не знаю как. Было бы здорово, если бы кто-нибудь мог мне помочь. все поможет.

class GameScene: SKScene {
    override func didMoveToView(view: SKView) {
        let box = SKSpriteNode()
        box.position = CGPoint(x: size.width/2-100, y: size.height/2)
        box.color = UIColor.blackColor()
        box.size = CGSize(width: 200, height: 200)
        addChild(box)

        let HelloLable = SKLabelNode()
        HelloLable.text = "Hello"
        HelloLable.position = CGPoint(x: size.width/2, y: size.height/2)
        HelloLable.fontColor = UIColor.whiteColor()
        HelloLable.fontSize = 50
        addChild(HelloLable)


    }

1 ответ

Если я вас правильно понимаю, вы хотели бы сделать что-то вроде этого:Пример 1

Я не думаю, что есть стандартное решение для этого (возможно, вы могли бы попробовать смешивание режимов или шейдеров). Возможно, самым простым решением было бы сделать 2 метки, одну белую в коробке и одну черную под коробкой, с похожими свойствами, и обрезать белую с помощью коробки.

Другие вопросы по тегам