Fragen Sie einfach den Titel fragt, ich frage mich, ob das überhaupt möglich ist. Die meisten Beispiele für den SKCropNode verwenden eine Textur oder eine Form. Was ich erreichen möchte, ist eine Maske einer benutzerdefinierten Form. Lass es mich wissen, wenn es einen Weg gibt!Können Sie einen SKSpriteNode mit einem anderen SKSpriteNode maskieren
Antwort
Sie können einen Knoten maskieren, indem Sie ihm einen untergeordneten Knoten zuweisen, wobei die zPosition des untergeordneten Knotens größer ist als die des übergeordneten Knotens. Und dann müssten Sie natürlich den Kindknoten korrekt über dem Elternknoten positionieren - aber das sollte einfach sein, da sich die Position des Kindknotens relativ zum Elternknoten befindet (dh wenn der Elternknoten die Position (25, 30) hat) in der Szene, und Sie setzen child.position = CGPoint (x: 5, y: 0), wäre die Position des Kindes in der Szene (30, 30)). Wenn sich der übergeordnete Knoten bewegt, bewegt sich auch der untergeordnete Knoten mit.
Dies ist keine Maske, dies ist eine Überlagerung. Masken sind in diesem Fall Daten, die für bitweise Operationen verwendet werden. Z.B. SKCropNodes, jedes Pixel mit Alpha <0,5 in einer Maske wird auf dem angegebenen Knoten abgeschnitten – Knight0fDragon
Ja, ich möchte eine Maske mit dem SKCropNode verwenden und keinen Knoten über dem anderen platzieren. – Lyres
- 1. Erstellen Sie SKSpriteNode mit einem Asset programmgesteuert
- 2. Zentriere einen SKLabelNode auf einem SKSpriteNode
- 3. So entfernen Sie einen SKSpriteNode korrekt
- 4. wie man SKSpriteNode wirft?
- 5. Wie bringt man einen SKSpriteNode nach vorne?
- 6. SKSpriteNode berechnet nur einen Teil der Texturfarbe
- 7. Swift: Animate SKSpriteNode Gradient
- 8. Swift: Anchor SKSpriteNode
- 9. SKSpriteNode mit UIImage von URL
- 10. Unerwarteterweise gefunden Nil SKSpriteNode
- 11. SKSpriteNode-Variable vollständig löschen
- 12. Größe und Skalierung SKSpriteNode
- 13. Wie kopiert man SKSpriteNode mit SKPhysicsBody?
- 14. SpriteKit SKSpriteNode bewegt
- 15. SKSpriteNode scaling nicht richtig
- 16. ist es eine gute Praxis, einen SKSpriteNode innerhalb eines SKSpriteNode zu erstellen?
- 17. Farbeigenschaft von SKSpriteNode zurücksetzen?
- 18. Positionen für SKSpriteNode generieren
- 19. Hinzufügen von Glow-Effekt zu einem SKSpriteNode
- 20. Casting eines SKSpriteNode in einem SKReferenceNode
- 21. Wie man einen SkspriteNode kopiert, aber sie getrennt hält
- 22. Einen CALayer mit einem anderen CALayer maskieren
- 23. Wie erstellt man einen Pulse-Effekt auf einem SKSpriteNode?
- 24. Eine SKSpriteNode-Textur horizontal spiegeln
- 25. Swift SKSpriteNode: Komplexe Sprite Texturen?
- 26. Wie man einen SKSpriteNode mit Ankerpunkt in Swift dreht?
- 27. SKAction läuft nicht auf SKSpriteNode
- 28. Selektor zu SKSpriteNode hinzufügen, wenn gedrückt
- 29. Wie Kind SKSpriteNode vom Elternteil SKSpriteNode zu entfernen, ohne Kind zu töten
- 30. Moving skspritenode mit Game Controller (ThumbStick) Swift
Was ist ein SKMaskNode? Meinst du SKCropNode? – Knight0fDragon
Ja das möchte ich sagen, meine Entschuldigung. Bearbeitet. – Lyres
ok, Sie können einen beliebigen SKNode als Maske verwenden, unabhängig davon, wie das endgültige Ergebnis Ihrer Maske aussieht, wenn das Alpha <.5 abgeschnitten ist (es sei denn, es handelt sich um einen anderen Crop-Knoten, dann erhalten Sie einen Alpha-Level-Cropping, was sehr praktisch ist) – Knight0fDragon