我需要有一个粒子发射器效果在2个点出现重复(为了分屏目的),我想知道是否有人遇到过这样做的方法.我的目标是在iOS 10上运行.这是我到目前为止所尝试的.
targetNode给一个SKNode然后复制SKNode每一帧:targetNode对我来说在iOS 10中不起作用. SKNode,并使用view.textureFromNode纹理来复制每一帧:占用帧的1/120,对我来说太慢了. SKNode:操作不会在iOS 10上运行 我留给真正发光的唯一选择是写我自己的粒子发射器,我试图避免,所以我想知道是否有其他人有这个问题,并知道一个解决方案,以达到预期的效果.
我能做的另一件事是预渲染发射器,但如果我走这条路线,这将占用大量纹理内存.
编辑:为了帮助可视化,我绘制了一张图片,白色边框显示了分屏的位置.黑色边框显示场景包装发生的位置.

截至目前,玩家1和玩家2都在原始场景中.
球员2正在向右走,即将击中一个世界包裹将他移到世界的左手边,但他还没有击中它.所以我需要有一个场景的副本,以便它在视觉上看起来像一个场景.由于播放器1仍在原始场景上,原始发射器需要保持原位.玩家2将不得不在副本中看到相同的图像,否则一旦他通过该边界,就会发生"毛刺"效果,现在包裹的幻觉消失了.
最后结果:
我们只是说F %%%它,播放器1和播放器2将查看不同的发射器节点,我们将在需要时将发射器连接到每个播放器相机.
除了这里提出的问题:用SpriteKit在矩形中画一个洞?由于两者之间没有令人满意的答案,两者之间最显着的区别是这个问题需要缺少解决方法,特别是要求扭转SKCropNodes的功能.
由于孔的随机性,孔的数量以及孔要应用的物体的变化,上述问题可以解决的hacky方式的类型无法解决这个问题中的主要问题.
因此瑞士奶酪的例子如下:
想象一堆随机大小的矩形SKSpriteNodes,充满各种色调的奶酪色.
如何通过从每片奶酪中切出随机圆圈来制作瑞士奶酪?
如果SKCropNodes是圈子,他们只留下圆形的奶酪片而不是从奶酪块中切出孔.有没有办法反转SKCropNodes的行为,所以他们切换孔?
image-masking sprite-kit skspritenode skcropnode skshapenode