Swift / SpriteKit:如何创建水滴效果?

8

我想知道如何在Swift(SpriteKit)中实现以下效果。

effect example image

我考虑添加一些ShapeNodes,并使用-yscale 1填充它们的背景图像。但我认为这种效果是通过不同的方式实现的,因为背景图像不仅水平镜像 - 它还具有一些图形效果(它在水珠所具有的形状中被镜像等)。这是通过ShaderNode完成的吗?有人有想法如何在SpriteKit中创建相同的效果 - 就像水珠看起来像在“相机”上并且它们反射了背景“水珠般”的效果吗?谢谢。

通常情况下(在二维中),这是通过扭曲背景的副本并添加虚假高光和阴影来完成的。据我所知,SpriteKit 中没有此类功能,但 Core Image 中有。 - Confused
话虽如此,大部分可以通过新的SKWarp功能实现。也许。 - Confused
谢谢你的回复,Confused。嗯,这听起来非常复杂。我会尝试编写程序来实现它 - 我认为这个效果看起来真的很酷。如果有其他更好的想法,请在评论中告诉我。 :-) - aignetti
1
研究一下 SKEffectNodes,结合 SKCropNode,你应该能够实现你想要的效果。 - Knight0fDragon
1个回答

2

嗯,你可以创建一系列水的图像,并在某个z位置上随机显示它们,但我认为这种效果是在另一个程序中制作的,比如Unity或类似的程序,你最好创建透明的水滴图像,并在屏幕上随机显示它们。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接