Ios SKCropNode无法裁剪子SKEffectNode,且筛选器正在运行
也许这是有道理的,但我注意到,如果将SKEffectNode作为SKCropNode的子节点,则如果所述SKEffectNode的过滤器设置为某个值,则裁剪根本不起作用 具体地说,我在SKEffectNode上使用了一个模糊CIFilter。我在游戏中做了一个切换按钮,这样我可以打开/关闭模糊效果,很明显SKCropNode不能裁剪模糊的东西。我想知道这是否也适用于大多数/所有其他CIFilter 顺便说一句,我启用模糊的方式如下:Ios SKCropNode无法裁剪子SKEffectNode,且筛选器正在运行,ios,sprite-kit,crop,Ios,Sprite Kit,Crop,也许这是有道理的,但我注意到,如果将SKEffectNode作为SKCropNode的子节点,则如果所述SKEffectNode的过滤器设置为某个值,则裁剪根本不起作用 具体地说,我在SKEffectNode上使用了一个模糊CIFilter。我在游戏中做了一个切换按钮,这样我可以打开/关闭模糊效果,很明显SKCropNode不能裁剪模糊的东西。我想知道这是否也适用于大多数/所有其他CIFilter 顺便说一句,我启用模糊的方式如下: SKEffectNode* nodetoblur = [sel
SKEffectNode* nodetoblur = [self thenodetoblur];
CIFilter *blur = [CIFilter filterWithName:@"CIGaussianBlur" keysAndValues:@"inputRadius", @10.0f, nil];
nodetoblur.filter = blur;
nodetoblur.shouldEnableEffects = YES;
然后关闭:
SKEffectNode* nodetoblur = [self thenodetoblur];
nodetoblur.filter = nil;
nodetoblur.shouldRasterize = NO;
nodetoblur.shouldEnableEffects = NO;
谁能解释一下SKCropNode效率低下背后的理论,以及可能的解决方法
…也许我应该创建SKEffectNode的SKCropNode子级,而不是(当前)其他方式
更新:罪魁祸首似乎是创建了一个SKEffectNode,并将
shouldEnableEffects
设置为YES。必须将其设置为“否”,否则SKCropNode无法裁剪SKEffectNode。我尝试使用SKCropNode
裁剪SK3DNode
也无效。我认为这与将数据写入单独的缓冲区有关,SKCropNode
无法很好地处理这些缓冲区。