使用SpriteKit自定义CIFilter

时间:2013-12-20 21:53:11

标签: sprite-kit core-image cifilter skeffectnode

我正在尝试使用SpriteKit实现我自己的自定义CIFilter。我想要实现的是使用我的自定义CIFilter作为SKEffectNode上的过滤器。

我写了一个非常简单的测试过滤器(只返回pixelValue),它在QuartzComposer中工作正常。

我跟着the dev guide编写了一个CIFilter子类,注册了过滤器,并提供了filterWithNameoutputImage实现,以及初始化和初始化。

但是当我尝试使用CIFilter上的SKEffectNode时,我没有得到输出图像(只是空白图像 - 填充clearColor中的空白)。

我认为我的SKEffectNode设置没有任何问题,因为如果我切换到另一个(内置)CIFilter,一切都按预期工作。

我也认为.cikernel没有任何问题,因为它在Quartz Composer中运行正常(它实际上只是一行从样本中返回pixelValue ...)

我在我的CIFilter子类的初始化和初始化中设置了断点,两者都被调用,内核用正确的代码字符串初始化,以及一切都好了。

然而,我的输出仍然令人愤怒地空白......

是否有人在CIFilters上使用自定义SKEffectNodes成功了?

谢谢!

编辑:忘了提到我在使用它之前调用[MyFilterSubclass class]来初始化它,我还在-(CIImage *)outputImage中设置了一个断点,它确实被调用每个帧,所以它看起来像过滤器设置正确,它每帧计算一个结果,但这个结果不知不觉被SKEffectNode ...帮助:(!

0 个答案:

没有答案