mask渐变问题求教

大家好,刚接触cocos2dx几天,有个问题想请教一下
我想通过遮罩合成对一张图片进行特殊渐变过程,做法如下
Sprite* targetSprite = Sprite::create(“test.jpg”);
maskSprite->setBlendFunc( BlendFunc{GL_DST_COLOR, GL_ONE} );
Sprite* maskSprite = Sprite::create(“mask.png”);
maskSprite->setBlendFunc( BlendFunc{GL_ONE, GL_ZERO} );

RenderTexture * rt = RenderTexture::create( size.width,size.height );

rt->begin();
maskSprite->visit();
targetSprite->visit();
rt->end();
这样能得到一个合成newSprite,但是要进行渐变,我现在的做法是通过timer不断的修改mask的alpha重复render过程来实现,
好像有点蠢,问一下大家有没有简单的写法,直接通过action之类的