たとえば、SKShapeNode
を作成して、子を作成します(例は十字線とその2本の交差線です)。十字は親であり、交差する線は子です。親の子供のアルファ値をどのように変更できますか? は、現在だけで使用して:Swift 3(SpriteKit):すべての子に影響を与える親のアルファ値を変更する
parent.alpha = 0.5
は、その子のアルファ値を変更しません。
誰かがこの問題を解決する方法や他の方法で解決できるシェーダを作成できる場合は、返信してください。 この投稿は私の前の投稿に対応しています:(Swift: Make translucent overlapping lines of the same color not change color when intersecting) 誰かがこの問題を解決できれば、半透明の線が交差する暗い場所を消そうとしています。
let nodeParent = SKShapeNode()
let nodeOne = SKShapeNode(circleOfRadius: 5)
let nodeTwo = SKShapeNode(circleOfRadius: 5)
//Set the color of the circles, I'm not sure if this is the right way
nodeOne.fillColor = UIColor.init(red: 0.0, green: 1.0, blue: 0.0, alpha: 1.0)
nodeTwo.fillColor = UIColor.init(red: 1.0, green: 0.0, blue: 0.0, alpha: 1.0)
nodeParent.addChild(nodeOne)
nodeParent.addChild(nodeTwo)
addChild(nodeParent)
nodeParent.alpha = 0.5
円の代わりにラインを使用している間、私は、問題のスクリーンショットをとっている:
おかげここ
は、一例として、いくつかのコードです。
これは動作するはずです。子を持ち、子を持ち、子を持つ親ノードは、その親の透明度がすべての子に等しく影響します。すべての子が1.0の不透明度で、親が0.5に変更された場合、すべての子は0.5になります。子どもが0.5で生活を開始し、親が1.0であれば、親を0.5に変更すると子の不透明度は0.25に半分になります – Confused
すべての子を親に1.0のアルファを付けて追加し、親のアルファを変更します何らかの理由でそれに影響を与えません。それは私が把握しようとしているものです。 –
ああ、間違いなく、親と子の関係に間違いがあります。より多くのコードを表示できますか?これは本当にうまくいくはずです。 – Confused