我有一个男人走路的动画。背景图片包含一些树木。我戴着这些树的面具,我想把它涂在那个男人身上,所以看起来那个男人走在树后面。
这是我的代码:
CCRenderTexture * rt = [CCRenderTexture
renderTextureWithWidth:maskSprite.contentSizeInPixels.width
height:maskSprite.contentSizeInPixels.height];
rt.position = ccp(maskSprite.contentSize.width/2, maskSprite.contentSize.height/2);
[rt.sprite setBlendFunc: (ccBlendFunc) { GL_ONE_MINUS_SRC_ALPHA, GL_ZERO }];
[rt beginWithClear:0.0f g:0.0f b:0.0f a:1.0f];
[walkingManSprite visit];
[rt end];
[maskSprite setBlendFunc: (ccBlendFunc) { GL_ZERO, GL_ONE_MINUS_SRC_ALPHA }];
[rt beginWithClear:0.0f g:0.0f b:0.0f a:1.0f];
[maskSprite visit];
[rt end];
CCSprite *retval = [CCSprite spriteWithTexture:rt.sprite.texture];
retval.flipY = YES;
return retval;
结果是那个男人走在树后,但我的面具在背景上显示为黑色阴影。我怎么能不显示蒙版但将其应用于动画?