发射器节点不淡入



我正在尝试在一个发射器节点中褪色,该节点需要从动画开始时就已经传递了大约100秒,所以在我的代码中,我有这条线设置发射器:

 emitter.advanceSimulationTime(100);

然后,当我需要将其添加到场景中时,我会这样做:

 worldNode.add(emitter);
 emitter.run(SKAction.fadeIn(withDuration:2.0));

,但是发射极突然弹出,好像Fadein甚至不在那儿。如果我删除了AdvanceMimulationTime,请按预期的方式调用发射器逐渐淡出,但不幸的是我需要它。我尝试了一些不同的事情,但没有任何效果,任何技巧?

通过其alpha属性将发射器嵌套在另一个sknode上,并淡化该节点的不透明度。这将使您以您想要的方式使您的活动发射极淡入视觉淡出,因为alpha属性在层次结构下传播。

来自Apple Docs ...

声明

var alpha: CGFloat { get set }

讨论

默认值为1.0

sknode类不执行绘图,而是许多子类做。当绘制节点或任何后代时,alpha每个像素的组件乘以节点的alpha属性和然后夹紧范围为0.0-1.0。使用此修改后的alpha值将像素混合到帧缓冲器中。渲染的子类内容定义确定所使用的混合操作的属性结合Alpha值,将像素混合到父母的framebuffer。

最新更新