SpriteKit: Как вырезать движущееся отверстие в спрайте

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

Я нашел много способов вырезать статическое отверстие в узле, например, чтобы вырезать отверстие, используя режим наложения и назначая текстуру новому спрайту, но это кажется очень неэффективным, если это нужно делать в каждом кадре.

Использование изображения, в котором уже есть отверстие, также не вариант, потому что мне нужна поддержка, чтобы добавить во время работы несколько фонариков.

При непосредственном использовании режима наложения также вырезается отверстие во всех узлах ниже.

Есть ли способ применить режим смешивания только к темному наложению или другой подход для решения этой проблемы?

Изменить: Форма отверстия (фонарик), чтобы вырезать это спрайт любой формы и с альфа-значениями (для гладких краев и т. Д.).

0 ответов

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